如何制作' var data = data2 [i]'到一个物体?

时间:2018-05-10 08:14:32

标签: javascript

我试图通过从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"
                }
        }

任何人都可以帮我这个吗?

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';