0
를 사용하여 JS에서 변수의 값을 변경할 수 없습니다 .내가 크롬 확장 프로그램의 맨 처음에이 라인을 parseFromString
alert(macroXML[1]);
macroXML[1] = 'RAWR';
alert(macroXML[1]);
오류가 없으며 아무 것도 표시되지 않습니다. 그것은 똑같은 것을 출력합니다.
누군가는 아마 이유를 알고 있습니까?
를 사용하여 JS에서 변수의 값을 변경할 수 없습니다 .내가 크롬 확장 프로그램의 맨 처음에이 라인을 parseFromString
alert(macroXML[1]);
macroXML[1] = 'RAWR';
alert(macroXML[1]);
오류가 없으며 아무 것도 표시되지 않습니다. 그것은 똑같은 것을 출력합니다.
누군가는 아마 이유를 알고 있습니까?
동적 노드 목록을 다루고 있습니다. 문서가 변경되면 변경됩니다 (예 :
macroXML[1].parentNode.removeChild(macroXML[1]);
을하거나 다른 노드로 교체 : 목록에서 두 번째 요소를 제거하기 위해 당신이 할 수있는
var newNode = macroXML[1].ownerDocument.createElement("section");
macroXML[1].parentNode.replaceChild(newNode, macroXML[1]);
하지만 당신은 배열을하는 것처럼 당신이 그 목록을 작동 할 수 없습니다 - 그 때문에 실제 배열이 필요합니다. 다음과 같이 목록을 복사 할 수 있습니다.
var macroArray = Array.prototype.slice.apply(macroXML);
macroArray[1] = 'RAWR';
예상대로 작동합니다.
NodeList와 비슷합니다. – SLaks
XMLDocument입니다. 그것을 바꿀 수 없습니까? :/ – vox
나는 의심하지 않습니다. 배열에 복사하십시오. – SLaks