[英]how to push one item into array with 15 objects
var array1 = [{
"candidateId": 57,
"firstName": "Sumit",
"lastName": "Kumar Gupta",
"displayName": "Sumit1",
"locked": false,
"photoId": -1,
"resumeId": -1,
"experience": " 6 Months",
"email": "sumit1@test.com",
"mobile": "+91.8100688592",
"preferredLocation": [
"Bangalore"
],
"currentEmployer": [
],
"skills": [{
"skillName": "JAVA",
"level": "advanced",
"candidateRating": "5",
"rating": 0
}],
"viewed": true,
"nextStates": [{
"state": "Approach"
}]]
var array2 = [image1]
我從其他請求獲取array2
圖像,所以我分配給array2
。 現在,我想將此array2
推送或添加到array1
。 所以我創建了一個對象
'image'
array2.push({'image':image1})
並嘗試推動
for(var i=0; i<array1.length;i++){
array1[i].push(array2[i]);
}
但這沒用。
array1[i]['image'] = image1;
或array1[i].image = image1;
您需要使用屬性訪問器將圖像對象添加到array1值。
演示
var array1 = [{ "candidateId": 57, "firstName": "Sumit", "lastName": "Kumar Gupta", "displayName": "Sumit1", "locked": false, "photoId": -1, "resumeId": -1, "experience": " 6 Months", "email": "sumit1@test.com", "mobile": "+91.8100688592", "preferredLocation": [ "Bangalore" ], "currentEmployer": [ ], "skills": [{ "skillName": "JAVA", "level": "advanced", "candidateRating": "5", "rating": 0 }], "viewed": true, "nextStates": [{ "state": "Approach" }] }] for (var i = 0; i < array1.length; i++) { array1[i]['image'] = 'image1'; } console.log(array1)
如果要映射兩個長度相等的數組,其中每個索引位置的對象都將被合並,則可以map
其中一個數組,並使用傳播語法對對象進行淺表復制和合並。 如果任何一個輸入數組都需要保持不變,這種方法將有助於防止副作用。
該代碼將是:
array1.map((obj, i) => ({...obj, image: array2[i]}));
和一個演示:
var array1 = [{ "candidateId": 57, "firstName": "Sumit", "lastName": "Kumar Gupta", "displayName": "Sumit1", "locked": false, "photoId": -1, "resumeId": -1, "experience": " 6 Months", "email": "sumit1@test.com", "mobile": "+91.8100688592", "preferredLocation": [ "Bangalore" ], "currentEmployer": [ ], "skills": [{ "skillName": "JAVA", "level": "advanced", "candidateRating": "5", "rating": 0 }], "viewed": true, "nextStates": [{ "state": "Approach" }] }]; var array2 = ["image1"]; var combined = array1.map((obj, i) => ({...obj, image: array2[i]})); console.log(combined);
似乎您正在嘗試訪問數組2中比可用索引更多的索引。
嘗試:
for(var i=0; i<array1.length;i++){
array1[i].push(array2[0]);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.