我不是AS开发人员,我只是无法测试这个东西,但我很好奇在ActionScript中尝试访问不存在的XML节点属性时会发生什么。 鉴于XML:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<file attr="val"></file>
</root>
尝试运行此(伪)代码时会发生什么:
var xml = new XML();
xml.ignoreWhite = true;
xml.onLoad = function (success){
if (success){
// marked line:
var somevar = this.firstChild.childNodes[0].attributes.inexistentattr;*
}
}
xml.load(file);
“标记的行”是否会引发错误或其他内容,或者只返回空字符串或未定义?
答案 0 :(得分:2)
您提供的代码没有可见的输出,也不会抛出错误。 somevar
被赋予值undefined
,您可以通过追踪它来查看。
var xml = new XML();
xml.ignoreWhite = true;
xml.onLoad = function (success){
if (success){
var somevar = this.firstChild.childNodes[0].attributes.nonexistentattr;
trace(somevar); // undefined
}
}
xml.load('test.xml');