从for循环中访问新的Object()值

时间:2018-12-12 11:54:01

标签: javascript netsuite

我想从

之类的for循环访问var obj=new Object()
for (var i = 0; i < 5; i++) {                               
    obj['1'] = 'hi';
    obj['2']='hello'    
}

log.debug(obj);

以上循环仅返回最后一个记录值。并非所有值

预先感谢!

3 个答案:

答案 0 :(得分:1)

您可以使用以下方法达到所需的结果

var obj = {};
for (var i = 0; i < 5; i++) {
     obj[i][1] = 'hi';
     obj[i][2] = 'hello';
}

log.debug({ title: 'obj', details: obj });

注意:根据NetSuite help doc log.debug / log.audit等方法,期望使用JSON对象。

答案 1 :(得分:0)

目前尚不清楚您打算做什么。 也许您想获取obj的所有属性? 如果是这样,请尝试以下操作:

Object.keys(obj).forEach(key => {
    console.log(key);
    console.log(obj[key]);
})

答案 2 :(得分:-1)

您每次循环都将重置值。对于每次迭代,您的代码都会设置obj[1]obj[2]

您的问题还不清楚,但是我想您想做的事情可能是这样的:

for (let i = 0; i < 5; i++) {
  obj[i] = "value goes here";
}

console.log(obj)

这为obj提供了5个属性。