一、不能是變量web
var obj = {}; obj.AttrName = 'Tom'
注意:經過 對象.屬性名 獲取屬性值的時候,屬性名(AttrName )不能是一個變量。數組
二、能夠是變量svg
原始數據數組:spa
var rawDataList = [ { "countDate": "2018-04-08", "countNum": "2" }, { "countDate": "2018-04-18", "countNum": "2" }, { "countDate": "2018-04-23", "countNum": "7" } ]
處理上述數據:code
function Day2Mon2Year(dataList,prop){ for(var i = 0; i < dataList.length; i++){ var obj = rawDataList[i] //報錯:Uncaught TypeError: Cannot read property 'replace' of undefined var dateAttr = obj.prop //不報錯:由於prop是變量,獲取方式不能是經過.屬性名稱 var dateAttr = obj[prop] } } //調用報錯:Uncaught TypeError: Cannot read property 'replace' of undefined Day2Mon2Year.(rawDataList,'countDate');
三、總結:
1、若是屬性名稱是常量
(固定值),獲取屬性值的方式有:xml
對象.屬性名稱
對象[屬性名稱]
2、若是屬性名稱是一個變量
(不固定值),獲取屬性值方式只能是:對象
對象[屬性名稱]