在JavaScript中,如何将对象与其他一些新属性一起推送到数组中。例如,我想做这样的事情:
for(var i=0; i<T_ARRAY.length; i++)
{
if(!T_ARRAY[i].isCorrect)
{
NEW_ARRAY.push({T_ARRAY[i], 'idxPerg' : i+1});
}
}
答案 0 :(得分:1)
您可以通过执行以下操作来添加属性:
for(var i=0; i<T_ARRAY.length; i++)
{
if(!T_ARRAY[i].isCorrect)
{
var newObj = T_ARRAY[i];
newObj.idxPerg = i+1;
NEW_ARRAY.push(newObj);
}
}
您也可以使用动态密钥表示法
for(var i=0; i<T_ARRAY.length; i++)
{
if(!T_ARRAY[i].isCorrect)
{
var newObj = T_ARRAY[i];
newObj["idxPerg"] = i+1;
NEW_ARRAY.push(newObj);
}
}
答案 1 :(得分:1)
JavaScript没有任何语法可以向对象添加属性并返回原始对象。你必须在两个陈述中这样做。
T_ARRAY[i].idxPerg = i+1;
NEW_ARRAY.push(T_ARRAY[i]);