두 개의 "해시"배열이 있습니다. 두 항목을 합친 항목을 제외하고 최종 결과가 다른 배열의 해시가되도록 두 항목을 병합해야합니다.루프를 jQuery.extend와 병합하십시오 : 마지막 값은 항상 동일합니까?
inhabitants = {}
idx = 0
for (i=0; i<persons.length; i++) {
person = persons[i];
for (j=0; j<houses.length; j++) {
house = houses[j];
console.log(house);
inhabitants[idx] = $.extend(person,house);
console.log(inhabitants[idx]);
idx++;
}
}
결국 나는 $ .extend() 행에있는 매개 변수의 순서에 따라 항목 수가 어리석은 것입니다. 그리고 추가 된 "집"항목은 항상 배열의 마지막 항목입니다.
분명히 jQuery의 $ .extend()가 예상 한대로 작동하지 않습니다. 누구든지 도와 줄 수 있습니까?
잘 모르겠지만'$ .extend ({}, person, house)'시도해도 될까요? 현재 '사람'을 덮어 쓰고 있습니다. – pimvdb
pimvdb, 두 개의 해시간에 키가 다른 경우 집의 키를 사람에게 * 추가 *하지 않습니까? 나는 네가하는 말을 시도 할 것이다. – AKWF
맞습니다. 기본적으로'person'을'주민 [idx]'에게 할당하고 있다는 것을 알고 계십니까? 중첩 루프에 '사람'이 하나만 있기 때문에 이전에 할당 된 객체도 변경됩니다. – pimvdb