簡體   English   中英

對象中的數字鍵在Firefox中產生錯誤(“ SyntaxError:缺少;語句前”)

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM