Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用javascript或jQuery中的数组值替换字符串中出现的内容?_Javascript_Jquery_Search_Replace_Indexof - Fatal编程技术网

如何用javascript或jQuery中的数组值替换字符串中出现的内容?

如何用javascript或jQuery中的数组值替换字符串中出现的内容?,javascript,jquery,search,replace,indexof,Javascript,Jquery,Search,Replace,Indexof,我有以下字符串和数组: var message = 'This is a @[20] very fun, @[75] evening.'; var array_values = {"20": "really", "112": "extreme", "75": "happy"}; 如何用相应的数组值替换@[number]引用,以获得以下结果: message = 'This is a really very fun, happy evening.'; 谢谢 您可以使用以下方法执行此操作: v

我有以下字符串和数组:

var message = 'This is a @[20] very fun, @[75] evening.';
var array_values = {"20": "really", "112": "extreme", "75": "happy"};
如何用相应的数组值替换@[number]引用,以获得以下结果:

message = 'This is a really very fun, happy evening.';
谢谢

您可以使用以下方法执行此操作:

var message='这是一个非常有趣的,@[75]夜晚';
var数组_值={“20”:“真的”、“112”:“极端”、“75”:“快乐”};
for(数组_值中的var键){
if(数组_值.hasOwnProperty(键)){
message=message.replace('@['+key+']',数组_值[key]);
}
}
控制台日志(消息)您可以使用以下方法执行此操作:

var message='这是一个非常有趣的,@[75]夜晚';
var数组_值={“20”:“真的”、“112”:“极端”、“75”:“快乐”};
for(数组_值中的var键){
if(数组_值.hasOwnProperty(键)){
message=message.replace('@['+key+']',数组_值[key]);
}
}
控制台日志(消息)单向:

var parsed = message.replace(/@\[(\d+)\]/g, function(m, v) {
    return array_values[v] || m;
});
单向:

var parsed = message.replace(/@\[(\d+)\]/g, function(m, v) {
    return array_values[v] || m;
});
可能的办法

for (var key in array_values) {
   message = message.replace('@[' + key + ']', array_values[key]);
}
可能的办法

for (var key in array_values) {
   message = message.replace('@[' + key + ']', array_values[key]);
}

array\u values
不是数组……是的-
array\u values
是一个对象。如果需要数组,请运行
Object.keys(array\u values)
以获取包含该对象的键的数组。
array\u values
不是数组……耶-
array\u values
是对象。如果需要数组,请运行
Object.keys(array\u values)
以获取包含该对象的键的数组。