admin管理员组文章数量:1434372
I'm trying to push some datas into my array.
Actually my code looks like this:
arr.push('step1||item1||99');
It works but it's not the best as I need to split it after to manager datas.
How can I transform this into a multidimensional array ?
What I tried:
arr = [];
arr['step'] = 'step1';
arr['name'] = 'item1';
arr['number'] = '99';
arr.push(arr);
But it doesn't work...
Any help please.
I'm trying to push some datas into my array.
Actually my code looks like this:
arr.push('step1||item1||99');
It works but it's not the best as I need to split it after to manager datas.
How can I transform this into a multidimensional array ?
What I tried:
arr = [];
arr['step'] = 'step1';
arr['name'] = 'item1';
arr['number'] = '99';
arr.push(arr);
But it doesn't work...
Any help please.
Share Improve this question edited Mar 5, 2016 at 0:38 asked Mar 5, 2016 at 0:31 user4072347user4072347 4- What do you mean by "I need to explode it after to manager datas"? – AMACB Commented Mar 5, 2016 at 0:37
-
Remember that in JS is
split
. – user4072347 Commented Mar 5, 2016 at 0:38 -
One major problem with your approach is that
arr.push(arr)
creates a circular array, where the last element is the entire array. But see my answer below for an alternative approach. – Shannon Scott Schupbach Commented Mar 5, 2016 at 0:43 - 1 I'd suggest going back and reviewing basic tutorials about JS data types, the difference between objects, and arrays, etc. Perhaps this would help: developer.mozilla/en-US/docs/Web/JavaScript/…. – user663031 Commented Mar 5, 2016 at 2:54
3 Answers
Reset to default 3Is there a reason you don't want these individual data points to be objects?
var arr = [];
var dataPoint = { 'step': 'step1', 'name': 'item1', 'number': 99 };
arr.push(dataPoint);
If this isn't what you're looking for, can you give a fuller explanation of what your dataset should look like so we can better understand the problem?
Array holds "indexes"
Object holds "Key" and "Value"
Array example:
var arr = new Array;
arr[0] = 'step1';
arr[1] = 'item1';
arr[2] = '99';
console.log(arr);
Object example:
var obj = new Object;
obj.stop = 'step1';
obj.item = 'item1';
obj.number = 99;
console.log(obj);
Objects in array:
var arr = new Array;
var obj = new Object;
obj.stop = 'step1';
obj.number = 99;
arr.push(obj)
console.log(arr); // Output => [{stop: 'step1', number: 99}]
maybe you mean something like this
arr=[];
var s={
step:'step1',
name:'item1',
number:'99'
}
arr.push(s);
console.log(arr);
s
is an object, which works just like an array, but is referenced by a string instead of an integer:
s['step'] === 'step1'
s.step === 'step1'
arr[0] === s
Be aware that there are some differences, like you can't iterate over an object like you can an array: you need to use another method like a "for in" loop, for instance.
本文标签: javascriptPush datas into a multidimensional array in JSStack Overflow
版权声明:本文标题:javascript - Push datas into a multidimensional array in JS - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1745631485a2667302.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论