Don';当传入参数javascript时,将t concat数组作为字符串
我遇到了一个奇怪的问题。我有一个名为Don';当传入参数javascript时,将t concat数组作为字符串,javascript,jquery,arrays,Javascript,Jquery,Arrays,我遇到了一个奇怪的问题。我有一个名为args的数组,看起来像这样(打印在控制台日志中)。请注意,Array(1)是此数组中的另一个数组 ["1", Array(1), "", "abc", "", "", "def", "2"] 当我将此数组作为参数传递给像这样的函数时,onclick=“myFunction('+args+')”,我得到了错误: 语法错误:预期表达式,get','myFunction(1,element1,abc,,,def,2) 当我将空字符串更改为null时,它也不起作用
args
的数组,看起来像这样(打印在控制台日志中)。请注意,Array(1)
是此数组中的另一个数组
["1", Array(1), "", "abc", "", "", "def", "2"]
当我将此数组作为参数传递给像这样的函数时,onclick=“myFunction('+args+')”
,我得到了错误:
语法错误:预期表达式,get','myFunction(1,element1,abc,,,def,2)
当我将空字符串更改为null时,它也不起作用<代码>[“1”,数组(1),空,“abc”,空,空,“def”,“2”]。同样的错误。我该如何解决这个问题?
var div=document.createElement('div');
变量数组=[“1”、[“blah”]、“abc”、“”和“”、“def”、“2”];
//将onclick放在元素上,而不是作为html的属性
div.onclick=函数(){
console.log(数组);
};
div.innerHTML=“单击我”;
文件.正文.附件(div)代码>这是因为数组中有引号,这些引号在onclick
属性中进行处理。您可以用引号的XML表示形式(“
)替换引号,以避免该问题,如下所示:
单击我
这是一个很好的问题。你能提出一个吗?上面数组的预期参数是什么?不要使用inlineonclick
。添加一个事件侦听器,这样就不存在这样的问题,或者使用单引号——JS允许双引号或单引号来指示字符串文字,以便轻松地将它们嵌入到其他字符串中我写这篇文章的时候你正在更新你的答案;-)