cum pentru a împinge un singur element în matrice cu 15 obiecte

voturi
21
var array1 = [{
  candidateId: 57,
  firstName: Sumit,
  lastName: Kumar Gupta,
  displayName: Sumit1,
  locked: false,
  photoId: -1,
  resumeId: -1,
  experience:  6 Months,
  email: [email protected],
  mobile: +91.8100688592,
  prefferedLocation: [
    Bangalore
  ],
  currentEmployer: [

  ],
  skills: [{
    skillName: JAVA,
    level: advanced,
    candidateRating: 5,
    rating: 0
  }],
  viewed: true,
  nextStates: [{
    state: Approach
  }]]


var array2 = [image1]

Sunt obtinerea de array2imagini de la alte cereri , așa că am atribuit în array2. Acum am vrut să împingă sau să adăugați acest lucru array2în array1. Așa că am creat un obiect

'image'  
array2.push({'image':image1})

și a încercat împingerea

for(var i=0; i<array1.length;i++){
  array1[i].push(array2[i]);
}

dar nu a mers.

Întrebat 29/05/2018 la 12:20
de către utilizator
În alte limbi...                            


3 răspunsuri

voturi
1

array1[i]['image'] = image1;sau array1[i].image = image1; trebuie să adăugați obiectul dvs. imagine la valoarea matrice1 folosind proprietate Conturi cu acces.

DEMO

var array1 = [{
 "candidateId": 57,
 "firstName": "Sumit",
 "lastName": "Kumar Gupta",
 "displayName": "Sumit1",
 "locked": false,
 "photoId": -1,
 "resumeId": -1,
 "experience": " 6 Months",
 "email": "[email protected]",
 "mobile": "+91.8100688592",
 "prefferedLocation": [
   "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)

Publicat 29/05/2018 la 12:26
sursa de către utilizator

voturi
0

Se pare că încercați să accesați mod mai indecși în matrice doi decât sunt disponibile.

încerca:

for(var i=0; i<array1.length;i++){
  array1[i].push(array2[0]);
}
Publicat 29/05/2018 la 12:28
sursa de către utilizator

voturi
1

Dacă încercați să harta două matrice cu lungimi egale , în cazul în care un obiect din fiecare poziție de indicele respectiv urmează să fie îmbinate , atunci puteți mappeste una dintre matrice și utilizarea răspândirea sintaxa pentru copiere superficială și îmbinarea obiectelor. Această abordare va ajuta la prevenirea efectelor secundare în cazul în care fie matrice de intrare trebuie să fie lăsat nemodificat.

Codul ar fi:

array1.map((obj, i) => ({...obj, image: array2[i]}));

Precum și o demonstrație:

var array1 = [{
  "candidateId": 57,
  "firstName": "Sumit",
  "lastName": "Kumar Gupta",
  "displayName": "Sumit1",
  "locked": false,
  "photoId": -1,
  "resumeId": -1,
  "experience": " 6 Months",
  "email": "[email protected]",
  "mobile": "+91.8100688592",
  "prefferedLocation": [
    "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);

Publicat 29/05/2018 la 12:56
sursa de către utilizator

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more