我从编写的API中获取了json。此json包含一些值,并且其中一个应附加到另一个json。 要将数据附加到的json如下:
document.getElementById('text').focus();
document.execCommand('paste');
我需要附加的数据是:
originalOrder = {
"nome": 1,
"cognome": 2,
"mail": 3,
"telefono": 4,
"cf": 5,
"data": 6,
"ora": 7,
"cellit": 8,
"cellex": 9
};
,如果我回显toAppend值,它将显示正确的值。例如说toAppend回显了dummyData。我希望json在末尾:
var toAppend = data.name;
所以我还计算了数组的长度:
originalOrder = {
"nome": 1,
"cognome": 2,
"mail": 3,
"telefono": 4,
"cf": 5,
"data": 6,
"ora": 7,
"cellit": 8,
"cellex": 9,
"dummyData": 10
};
然后将新项目添加到数组:
var lunghezza = parseInt(originalOrder.length);
lunghezza = lunghezza +2;
但是数组最终像这样:
originalOrder.toAppend=lunghezza;
所以我有两个问题:
我在做什么错了?
编辑: 如果可以的话
var toAppend = data.nome; console.log('toAppend:'+ toAppend);
在console.log中:
toAppend:dummyData; 这是预期的行为
谢谢!
答案 0 :(得分:0)
originalOrder
是一个对象,因此,要获取键的数量(即“对象的长度”),您需要:
Object.keys(originalOrder).length
要添加具有var toAppend
值的键,您需要编写:
originalOrder[toAppend] = lunghezza
答案 1 :(得分:0)
要将变量值用作对象的键,可以在javascript中使用方括号。
const obj = {
"hello": "world"
};
const key = "value";
obj[key] = "any value";
console.log(obj)
将打印
{
"hello": "world",
"value": "any value"
}
此外,您不能在对象上使用length
属性。但是,您可以获取对象的键列表,然后获取长度。
console.log(Object.keys(obj).length);
将打印
2
希望这会有所帮助