I have an array and I want to put it in another array using indexes.
For example:
arry[1].push(sub_array_1)
array[2].push (sub_array_2)
But I get an error if I write:
var sub_array_1 = [1, 2, 2, 2, 2];
arry[1].push(sub_array_1)
Using spread operator
var subArray = [1, 4, 6, 7];
var mainArray = [6, 7, 8];
var index = 1;
mainArray = [...mainArray.slice(0, index), subArray, ...mainArray.slice(index)];
Assuming:
var arry = [9,8,7];
var sub_array_1 = [1,2,2,2,2];
If you are trying to insert sub_array_1
into arry
, as a single element , just use splice
directly:
arry.splice(1, 0, sub_array_1);
The result will be:
[9,[1,2,2,2,2],8,7]
On the other hand, if you are trying to insert the contents of sub_array_1
before the second element of arry
, you can do something like this:
Array.prototype.splice.apply(arry, [1, 0].concat(sub_array_1));
The result will be:
[9,1,2,2,2,2,8,7]
Here is a more general function:
function insert(arrayDest, index, arraySrc) { Array.prototype.splice.apply(arrayDest, [index, 0].concat(arraySrc)); }
[EDITED]
Starting with ES6, you can simplify the above code using the spread operator ( ...
). For example:
function insert(arrayDest, index, arraySrc) { arrayDest.splice(index, 0, ...arraySrc); }
You're using wrong syntax! Follow the either below mentioned approach.
var sub_array_1 = [1,2,2,2,2];
arry[1] = sub_array_1;
// OR
var sub_array_1 = [1,2,2,2,2];
arry.push(sub_array_1);
.push(ele)
will add an item to an array, thereby incrementing the length of array by 1. Remember array index starts at 0
.
If you need to add an item(array/object/other) to a particular index, use [index]. Eg: arry[0] = [1,23]; arry[1] = [4,5,6,7];
arry[0] = [1,23]; arry[1] = [4,5,6,7];
let array = [] array.push({"index": 0, "value":100}) console.log(array)
maybe it helping for you
obj.arrayOne.push(arrayLetters);
或者
obj['arrayOne'].push(arrayLetters);
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.