![](/img/trans.png)
[英]Ajax get with jsonp gives “SyntaxError: missing ; before statement” error
[英]Numeric keys in object gives error in Firefox (“SyntaxError: missing ; before statement”)
对象{'1':'test'}
在Firefox中给出错误,但在Chrome中似乎还不错。 有谁知道如何解决这个错误并使之工作? 键和值来自外部来源,因此我不能仅仅更改它们。 (在Firefox中运行下面的代码段,您将看到错误。)
{'1':'test'}
您必须将对象保存在变量中或以任何方式使用。 仅仅在脚本块中写入并没有任何作用。
以下工作正常:
var obj = {'1':'test'}; alert(obj['1']);
我在chrome控制台和firefox控制台中尝试过。
确实,这在Firefox中不起作用,但这是正常的。
在javascript中,如果您之前没有进行变量声明,则无法输入JSON。
因此,Firefox无法理解它,因为javascript无法理解它。
实际上,我认为Chrome会覆盖javascript解释器以允许声明时不带署名。
就像在python shell中键入5一样,它将写入5。因此,通过Chrome浏览器,您无需键入任何变量即可直接查看数组或对象的结构,而无需将其声明为变量。
您可以在此处查看示例:
https://jsfiddle.net/3yqdj599/
let yes = {'1':'test'};
console.log(yes)
// {'1':'test'} => that doesn't work
最后,不用担心,由于浏览器能够执行javascript,因此,如果您在变量中分配对象,它将对其进行解释。
希望情况清楚,对您有所帮助! :)
Cya!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.