国产精在线-国产精欧美一区二区三区-国产精视频-国产精品 日韩-一级黄色片在线看-一级黄色片在线播放

深入理解JavaScript對象屬性

創建JavaScript的對象,可以通過對象.屬性名獲取值,也可以通過對象['key']獲取內容。

使用對象['key']

,傳入的內容都會被轉換為字符串值。

var obj = { a: 'test', b: 'test2' }; obj.a; //test obj['b'];//test2

屬性讀寫

var obj = {
  a: 'test',
  b: 'test2'
};
obj.a; //test 
obj['b'];//test2

屬性異常

如果讀取沒有的屬性,通常會返回undefined,如果二維值的話,會報錯。

console.log(obj.z);//undefined
console.log(obj.z.b);//Uncaught TypeError: Cannot read property 'b' of undefined
obj.y.z = 2; // TypeError: Cannot set property 'z' of undefined
//可以通過判斷是否存在
if (obj.y) {
   //存在的話則執行
}

屬性枚舉

var key;
for (key in obj) {
  console.log(obj[key]);
}

屬性刪除

使用delete關鍵字

delete obj.a;//true
obj.a; // undefined

如果這個屬性設置過configurable為true,則不能刪除。

默認創建的屬性,configurable為false。下面講如何設置為true。

不能刪除全局變量

var globalVal = 1;
delete globalVal; // false

不能刪除函數

function fd() {}
delete fd; // false

可以刪除Window上的變量

ohNo = 1;
window.ohNo; // 1
delete ohNo; // true

屬性檢測

判斷是否存在這個屬性

var obj = {
  a: 'test',
  b: 'test2'
};

'a' in obj;//true
'toString' in obj //true

在原型鏈上的值也可以被檢測到。

例如所有對象上都有toString屬性.

每個屬性都有一個屬性:enumerable,是否可以被檢測,默認為true,如果為false,則檢測不到這個屬性,不能遍歷。

    var obj = {
      a: 'test',
      b: 'test2'
    };

    Object.defineProperty(obj, 'price', {
      enumerable: false,
      value: 1000
    });
    var key;
    for (key in obj) {
      console.log(obj[key])
    }
//只輸出test和test2

判斷這個屬性可否被枚舉,true 可以,false不能

obj.propertyIsEnumerable('price');

設置屬性的屬性

THE END
主站蜘蛛池模板: 亚洲精品国产成人7777 | 亚洲成a人片在线看 | 波多野结衣一区在线 | 伊人成人在线 | 亚洲欧美一区二区三区不卡 | 男女午夜视频在线观看 | 男女上下爽无遮挡午夜免费视频 | 日韩中文字幕在线观看视频 | 欧美日韩精品一区二区三区视频 | 亚洲成人精品久久 | 国产午夜免费视频片夜色 | 亚洲天堂2015 | 美女被拍拍拍拍拍拍拍拍 | 久久97视频 | 亚洲成人网页 | 国产网站黄 | 亚洲精品国产综合一线久久 | 青娱乐色| 国产aaaaa一级毛片 | 武松金莲肉体交战在线观看 | 一级成人黄色片 | 久久精品成人免费网站 | 男吃女下面刺激视频免费 | 国产亚洲人成网站在线观看 | 婷婷在线成人免费观看搜索 | 爽爽日本在线视频免费 | 亚洲欧美手机在线观看 | 日韩黄色片在线观看 | 亚洲精品不卡在线 | 香港aa三级久久三级老师 | 日韩精品午夜视频一区二区三区 | 国产性生活视频 | 亚洲国产欧美日韩第一香蕉 | 久久久久久91精品色婷婷 | 伊人婷婷色香五月综合缴激情 | 色老头久久久久 | 国产美女自拍视频 | 91.久久| 久久久精品久久视频只有精品 | 国产免费播放一区二区 | 久久青草免费免费91线频观看 |