js 漢字作為物件的屬性名或者變數名有什麼隱患

時間 2021-05-12 06:02:14

1樓:

中英文大小寫的符號輸入是不同的。在英文下就不用來回切換了。並且中文做變數,隱患是沒有的,但是怎麼看怎麼怪,強迫症是接受不了的。

2樓:悠揚小Q

一毛錢的隱患都沒有。

但這並不代表就是贊同,不過這是個好機會,你可以大膽放心並放肆的跟他去撕逼,而且你還占有絕對的上風:

你丫給我一中文當做key,我去你大爺。。。新手嗎?你培訓單位的老師沒教你不要用中文做key嗎?才出來多久,讓你給忘了還是吃了?

我只想說這麼千載難逢的撕逼機會,你還不趕緊把住去開始你的表演?還來刷知乎呢?

3樓:子丶言

從技術上講,一般的中文字元也是屬於 utf-8 的,對於 js 編譯器而言,它並不會考慮是英文還是中文的問題,甚至你也可以用 emoji 來作為屬性名...

但是僅限於你們設定了文件的編碼格式,一般預設編碼模式為 utf-8,但有一些編輯器並不會設定預設值,這時候,你就會發現,頁面裡的中文變成非語義化的字元(俗稱亂碼)了。或者某些人的瀏覽器預設編碼並不是 utf-8,而是例如 gb2312、gbk 之類的編碼,那麼也可能產生亂碼。

總的看來,漢字作為屬性名雖然可行,但並不能保證所有平台或瀏覽器上能夠統一的正常顯示,這是乙個比較嚴重的問題。

當然還有 @Wang Namelos 提到的 URI 編碼的問題

js 裡面,遍歷物件所有屬性的速度和遍歷同等陣列的速度,哪個更快一些?

測試了一下,還是普通物件遍歷得比較快 function getNoRepeatList1 arr var len arr.length var reList var i 0 var count 0 for i len i console.log noRepeatVal count return re...

js中有沒有什麼庫能安全的對物件屬性進行訪問 比如a b c d?

袁野 直接手寫唄,S站上tocqueville使用者寫的版本感覺特別簡潔 如下 function try func fallbackValue catch e 用法 try user.address.postcode,none 要是還想處理最後一級正好是null或者undefined,以及只處理空值...

C 的方法名或者屬性名首字母不大寫會有什麼後果?在生態層面呢?

張齊天 開車的時候闖紅燈是個不道德的做法,人人都要注意,但真正開車的人是你,你可以隨意闖紅燈。但是出了車禍就怪不了誰了。乙個道理。名稱管你大小寫都無所謂,你甚至開頭可以加下劃線,可以加原義前導符 這些都可以,但是真正寫乙個合適的程式,該帕斯卡就帕斯卡,該駝峰就駝峰,該下劃線開頭就下劃線開頭。 海東喵...