我试图通过从for循环中的变量创建一个对象来实现。
例如:
var arr = [1, 3, 4, 5];
var output = {};
for(var i = 0; i < arr.length; i ++) {
var message = "Array number : " + arr[i]; //var
output = {number : message}; //obj
console.log('Output', output);
}
但是,我不确定逻辑是否正确。
我想要的输出
Output: {
number:[
0: {"Array number: 1"},
1: {"Array number: 3"},
2: {"Array number: 4"},
3: {"Array number: 5"}
]
}
或
Output: {
number:{
"Array number: 1",
"Array number: 3",
"Array number: 4",
"Array number: 5"
}
}
任何人都可以帮我这个吗?
答案 0 :(得分:0)
而不是output
对象,您可以使用数组并将其推送到
var arr = [1, 3, 4, 5];
var output = [];
for(var i = 0; i < arr.length; i ++) {
var message = "Array number : " + arr[i]; //var
output.push( {number : message}); //obj
}
console.log(output)
答案 1 :(得分:0)
你可以试试这个:
var arr = [1, 3, 4, 5];
var number = {};
for(var i = 0; i < arr.length; i ++) {
var message = "Array number : " + arr[i];
number.push(message);
}
var output = {number};
console.log('Output', output);
答案 2 :(得分:0)
如果没有属性名称,则无法创建对象。如果你想要一个数组,那么你应该这样做:
var arr = [1, 3, 4, 5];
var output = {number: arr.map((item, index) => {
return {index: `Array number ${item}`};
}, arr)};
console.log(output);
输出:
{
number: [
{0: "Array number: 1"},
{1: "Array number: 3"},
{2: "Array number: 4"},
{3: "Array number: 5"}
]
}
答案 3 :(得分:0)
var arr = [1, 3, 4, 5];
var output = {};
var numbers = []
for(var i = 0; i < arr.length; i ++) {
numbers.push({'ArrayNumber' : arr[i]}); //var
}
output = {number : numbers}; //obj
console.log('Output', output);
答案 4 :(得分:0)
&#34; =&#34;是作业。它没有将值推入数组。如果您的变量是json数组,您可以将值推送到数组,如下所示:
var a = [];
a.push('value');
或您的变量是json对象:
var a = {};
a.key = 'value';