可以在HTML对象上使用下划线js isEmpty 函数吗?
e.g。
_.isEmpty(document.getElementById('myDiv'));
这似乎可用于精美的桌面平台和Android设备,但在iOS中返回true,尽管我知道它应该是假的。
可以在HTML对象上使用,还是应该使用其他方法?
更新:
这是isEmpty函数
// Is a given array, string, or object empty?
// An "empty" object has no enumerable own-properties.
_.isEmpty = function(obj) {
if (obj == null) return true;
if (_.isArray(obj) || _.isString(obj)) return obj.length === 0;
for (var key in obj) if (_.has(obj, key)) return false;
return true;
};
它在_.has(obj,key)部分失败了
_.has = function(obj, key) {
console.log('hasOwnProperty: obj=',obj,'key=', key, ':', hasOwnProperty.call(obj, key));
return hasOwnProperty.call(obj, key);
}
出于某种原因,在iOS8中,在HTML对象上调用hasOwnProperty总是返回false。
e.g。来自iOS8的输出
hasOwnProperty: obj= div#game-holder key= align : false
有什么想法吗?