이 E4X 코드가 기본 네임 스페이스를 존중하지 않는 이유는 무엇입니까?
-
03-07-2019 - |
문제
E4X를 사용하려고 노력하면서 Firefox 확장을 해킹하고 있습니다. 그러나 나는 이상한 문제를 발견했습니다.
var myXml = <test xmlns="http://test.com">
Hey
<inner>
Guys
</inner>
</test>;
var ns = myXml.namespace();
default xml namespace = ns;
this.log(myXml.*::inner);
this.log(myXml.ns::inner);
this.log(myXml.inner);
처음 두 로그 문장은 "Guys"를 인쇄합니다. 세 번째는 비어 있습니다. 무슨 일이야? 기본 네임 스페이스를 지정했는데 실제로 두 번째 로그 문에서 사용하는 것과 동일한 것입니다. 왜 이것이 효과가 없습니까?
해결책
Firefox 3에서는 코드가 예상대로 실행됩니다. 이전 버전의 Gecko에서 발견 된 버그가 발생할 수 있습니까?
제휴하지 않습니다 StackOverflow