数组元素为Json字段

时间:2018-04-11 14:52:26

标签: javascript arrays firebase

基本上我有一个json说.. collectionData = {'customerName':'Ashish','phone':'1234567'} 现在我有一个包含json字段名的数组,如..

array = ['customerName','phone'];

现在我想执行此操作:

for (let i = 0; i < array.length; i++) {
    console.log(collectionData.array[i]);
}

为什么这段代码会给我错误?谢谢你提前

1 个答案:

答案 0 :(得分:1)

您必须使用括号表示法访问它们。当你使用.点符号执行此操作时,会发生什么

console.log(collectionData.array[0])  // undefined - 
//it looks for .array[0] property which gives you undefined

这就是为什么建议在这种情况下使用括号表示法

现在考虑以下

  console.log(collectionData[array[0]])

这将首先将array[0]解析为customerName,并在存在时为您提供值。

如果您仍想使用点表示法访问,仍有办法执行此操作。像

这样的东西

var collectionData = {'customerName':'Ashish','phone':'1234567'}
var array = ['customerName','phone'];
for(var i=0; i<array.length; i++)
console.log(eval('collectionData.'+array[i]))