Javascript Firefox中对象中的数字键出现错误(“SyntaxError:missing;before语句”)

Javascript Firefox中对象中的数字键出现错误(“SyntaxError:missing;before语句”),javascript,Javascript,对象{'1':'test'}在Firefox中出现错误,但在Chrome中似乎没有问题。有人知道如何绕过这个错误并使它工作吗?键和值来自外部源,因此我不能仅更改它们。(在Firefox中运行下面的代码片段,您将看到错误。) {'1':'test'}必须将对象保存在变量中或以任何方式使用它。仅仅在脚本块中写入代码并没有任何作用 以下工作很好: var obj={'1':'test'}; 警报(obj['1'])我在chrome控制台和firefox控制台中进行了尝试 确实,这在Firefox中不

对象
{'1':'test'}
在Firefox中出现错误,但在Chrome中似乎没有问题。有人知道如何绕过这个错误并使它工作吗?键和值来自外部源,因此我不能仅更改它们。(在Firefox中运行下面的代码片段,您将看到错误。)
{'1':'test'}
必须将对象保存在变量中或以任何方式使用它。仅仅在脚本块中写入代码并没有任何作用

以下工作很好:

var obj={'1':'test'};

警报(obj['1'])我在chrome控制台和firefox控制台中进行了尝试

确实,这在Firefox中不起作用,但是,这是正常的

在javascript中,如果之前没有变量声明,就不能键入JSON

所以,Firefox不理解它,因为javascript不理解它

事实上,我认为Chrome覆盖了javascript解释器,允许不带属性的声明

就像在pythonshell中键入5一样,它将写入5。因此,Chrome允许您查看数组或对象的结构,只需键入它们,而无需将其声明为变量

您可以在此处看到一个示例:

最后,不要担心,因为浏览器能够执行javascript,如果在变量中分配对象,它将解释它

我希望这是清楚的,并且对你有帮助!:)


西娅

因为FF将
{}
解释为一个代码块。设置
variableName={'1':'test'}
不会引发错误。啊,这是有道理的。我试图在自定义框架中绑定到它,使用类似
的东西。但是当我将绑定更改为
时,它就工作了。谢谢
let yes = {'1':'test'};
console.log(yes)
// {'1':'test'} => that doesn't work