我一直认为XML DOM Element.getAttribute(name)
被指定为在属性不存在时返回空字符串。但我刚刚阅读了Mozilla's docs,其中说浏览器会返回null
。它继续引用WhatWG spec,确实说它应该返回null
。但是我回到W3C的DOM Level 3规范,它说该方法应该返回空字符串。
那真实的故事是什么?什么是真正的规格? WhatWG规范现在是否真的取代了DOM的W3C规范?我在几年内没有碰过这些东西,所以我支持时代了吗?
答案 0 :(得分:1)
W3C DOM规范的当前版本是DOM4。 kernel.Bind(x =>
{
x.FromThisAssembly()
.SelectAllClasses()
.WithAttribute<SomeAttribute>()
.BindBase();
});
的行为在DOM4中发生了变化,因此W3C似乎赶上了WHATWG。根据{{3}}:
DOM的主要标准化由W3C处理,W3C最后在2004年提出了建议.WHATWG接管标准的开发,将其作为活文件发布。 W3C现在发布WHATWG标准的稳定快照。
Wikipedia,DOM Level 1,DOM Level 2:
返回值
getAttribute
值作为字符串,或空字符串,如果该属性没有指定值或默认值。
返回上下文对象属性列表中第一个属性的值,其名称为 name ,否则返回 null 。