Javascript未按预期打印变量

Javascript not printing variable as expected

本文关键字:打印 变量 Javascript      更新时间:2023-09-26

对于以下javascript

for (i = 0; i < agentIds.length; i++) {
        var agentId = agentIds[i];
        var variable1 = "isWrapup_"+agentId;
        alert(variable1);
        var text2 = "var isWrapup = JSON.parse(${"+variable1+"});";
        alert(text2);
}

第一个警报打印为:isWrapup_efdbf4e71c9c6997eb705a71a6819b78

第二个警报打印为:var isWrapup = JSON.parse('+variable1+');

我希望将其打印为:var isWrapup = JSON.parse('isWrapup_efdbf4e71c9c6997eb705a71a6819b78')

我做错了什么?

文本格式需要更正,concat在这些情况下效果更好,原因如下。尝试:

for (i = 0; i < agentIds.length; i++) {
        var agentId = agentIds[i];
        var variable1 = "isWrapup_"+agentId;
        alert(variable1);
        var str1 = "var isWrapup = JSON.parse(${"
        var str2 = "});"
        var text2 = str1.concat(variable1,str2);;
        alert(text2);
}

当前您所需要做的就是从图片中删除"$",仅此而已。

var text2 = "var isWrapup = JSON.parse({" + variable1 + "});";  // works fine here : https://www.javascript.com/try

此外,您无意中使用了Escape_character#JavaScript

点对点协议使用0x7D八位字节(''175,或ASCII:})作为转义字符

在这种情况下,你可以在你的代码中尝试这样的东西:

var text2 = "var isWrapup = JSON.parse({{" + variable1 + "}});"; 

希望能有所帮助。