JS宣告物件時屬性名加引號與不加引號的問題及解決方法
一般情況下屬性名加引號和不加引號是都可以的,效果是一樣的。
var obj = {
name : '你好',
'age' : 1,
};
document.write( obj['name'] + '<br />' );
document.write( obj.age);
上面兩行程式碼均可以正確執行。
當且僅當你的屬性名是非法怪異的名字時候,會報錯。
var obj = {
333 : '這個會報錯'
};
document.write( obj.333);
此時報錯。
var obj = { “333”: '這個也會報錯' }; document.write( obj.333);
如果屬性名是數字,則必須有雙引號,並且用[] 方括號訪問。
var obj = {
"333": '這個正確'
};
console.log(obj["333"]);
結論:使用合法屬性名,使用 . 和 [] 訪問都可以;
如果屬性名是數字,則必須用“”包圍,並且用 [] 方括號訪問。
相關推薦
JS宣告物件時屬性名加引號與不加引號的問題及解決方法
一般情況下屬性名加引號和不加引號是都可以的,效果是一樣的。 var obj = { name : '你好', 'age' : 1, }; document.write( obj['name'] + '<br />' ); document.write(
js定義物件時屬性名是否加引號問題
1.在JavaScript中,加引號與不加引號都是一樣用,都是有效的。 var person1 = { name:'pca', age:12 }; alert(person1.name); //pca alert(person1['name']);//pca
js 一個物件的屬性名是一個變數怎麼處理?
1.這種方法的屬性(setAttrName)可以是一個變數。 var obj = {}; obj[setAttrName] = 'Tom' 2.這樣就可以動態的給js物件新增變數屬性。 var
js 把物件按照屬性名的字母順序進行排列
var obj = {name: "zhangsan", age: 8, ace: 5, nbme: "lisi"};//要排序的物件 function objKeySort(obj) {//排序的函式 var newkey = Object.keys(obj)
js基礎--物件的屬性名與屬性值
<!DOCTYPE html> <html> &
js調用函數時加括號與不加括號的區別
調用函數 執行 查看 return 區別 代碼 調用 dem 部分 函數名其實就是指向函數體的指針 不加括號, 可以認為是查看該函數的完整信息, 不加括號傳參,相當於傳入函數整體 加括號 表示立即調用(執行)這個函數裏面的代碼(花括號部分的代碼) 例2: functio
C++建立類物件時(無參)後不加括號與加括號的區別
https://blog.csdn.net/Windgs_YF/article/details/80927058 https://blog.csdn.net/u012750259/article/details/44832769 1、在棧中例項化物件 A a;//例項化物件,會呼叫c
JavaScript變數宣告時加 “var” 與不加 “var” 的區別
最近由於需要,在學習JavaScript,首先的var就很不解,在看了好多部落格並經過一系列的程式碼試驗。有以下總結: 總結: 1. 在函式內部的變數,加var 是區域性變數;不加是全域性變數,會對函式封裝造成影響。 2. 全域性作用域,加var的
C語言 函式指標呼叫時加星號與不加星號?
函式指標在賦值以後,例如通過庫動態載入方式,然後在使用時,程式呼叫遇到了既加星號,也有不加星號的方式,因此有點疑惑。 先上例項,再作分析 #include <stdio.h> void myfun(void); int main(void) { void (*pf)(void); p
js建構函式加括號與不加括號的區別
//首先定義一個建構函式Hello function Hello(){ alert(1); } //定義一個函式表示式 var getName = function(){ alert(2); } //例項化物件,下面這兩個如果建構函式沒有形參的話,例項
Mysql查詢條件加引號與不加引號的區別
開頭向大家問好,看了上篇文章閱讀數激增到300+,覺得寫的文章還是對一些人有幫助的,很開心。其實我並不是個善於言辭的人,生活中我是個很陰鬱的人,並不是所有人都喜歡和我做朋友,這麼多人(我知道其實沒300人,閱讀數不是人次數,好歹我也是程式設計師。)看了我的文章,讓我有一點小
python中類的方法裏面變量前加self與不加self的區別
UI PYTHON SELF 1.最近在執行一個UI自動化腳本登錄網站時遇到一個很奇葩的問題:運行腳本後chromedriver會驅動瀏覽器打開網站執行腳本裏面的一系列界面操作,操作完後瀏覽器自動關閉了(重點就在這裏,我明明沒有調用webdriver的close()或是quite()方法,為什麽它
Oracle的sql語句,查詢條件加括號與不加括號區別 -
ont 執行 ora 語句 oracl lar AC rac oracle 例如: SELECT ename, job, deptno FROM emp WHERE deptno in (10, 20) AND (ename like ‘%
JQuery裡的子元素過濾選擇器,加空格與不加空格的區別
最近學習jquery,發現它的選擇器的寫法與css的基本語法很像,加不加空格差別很大。 $(“:first-child)——:first只是返回單個元素,而first-child選擇符將為每個父元素匹
單例模式加鎖與不加鎖例項C++
1 教科書裡的單例模式 我們都很清楚一個簡單的單例模式該怎樣去實現:建構函式宣告為private或protect防止被外部函式例項化,內部儲存一個private static的類指標儲存唯一的例項,例項的動作由一個public的類方法代勞,該方法也返回單例類唯一的例項。
java中double型別資料加減操作精度丟失問題及解決方法
double型別資料加減操作精度丟失問題 今天在專案中用到double型別資料加減運算時,遇到了一個奇怪的問題,比如1+20.2+300.03,理論上結果應該是321.23,其實結果並不是這樣。 public double add() {
AIX, Linux下將指令碼放到後臺執行——加nohup與不加nohup的區別
對於Linux下來說,當在系統上執行下面的命令,將test.sh指令碼放到後臺執行/location/test.sh &此時,分兩種情況考慮問題,一:繼續執行exit命令退出當前session, 則 test.sh這個指令碼仍然在Linux系統裡面執行,二:不執行e
樹莓派ping主機名比IP地址慢的原因及解決方法
在樹莓派的Debian系統裡面訪問網路很慢,而且ping www.baidu.com響應非常非常的慢,但是直接用www.baidu.com的IP去ping,響應感覺超快,尤其是使用引數A,格式:ping -A ip。我個人認為肯定是域名解析出了問題。 1、debi
LINUX_004:將指令碼放到後臺執行——加nohup與不加nohup的區別
Linux系統 當在系統上執行下面的命令,將test.sh指令碼放到後臺執行 /location/test.sh &此時,分兩種情況考慮問題, 一:繼續執行exit命令退出當前session, 則 test.sh這個指令碼仍然在Linux系統裡面執行, 二:不執行e
函式前加static與不加static的區別
1:加了static後表示該函式失去了全域性可見性,只在該函式所在的檔案作用域內可見 2:當函式宣告為static以後,編譯器在該目標編譯單元內只含有該函式的入口地址,沒有函式名,其它編譯單元便不能通過該函式名來呼叫該函式,這也是對1的解析與說明