Art*_*ler 21 javascript jquery json
我有一个像这样的对象:
ricHistory = {
name1: [{
test1: value1,
test2: value2,
test3: value3
}],
name2: [{
test1: value1,
test2: value2,
test3: value3
}]
};
Run Code Online (Sandbox Code Playgroud)
现在我想用Javascript/jQuery检查例如name2是否为空.我知道这个方法hasOwnProperty.它只适用于data.hasOwnProperty('name2')名称是否存在,但我必须检查它是否为空.
Nul*_*teя 67
你可以做到这一点 jQuery.isEmptyObject()
检查对象是否为空(不包含属性).
jQuery.isEmptyObject( object )
Run Code Online (Sandbox Code Playgroud)
例:
jQuery.isEmptyObject({}) // true
jQuery.isEmptyObject({ foo: "bar" }) // false
Run Code Online (Sandbox Code Playgroud)
来自JQuery的另一种语法是你不使用Prototype或类似的,你更喜欢使用$而不是jQuery前缀;
$.isEmptyObject( object )
Run Code Online (Sandbox Code Playgroud)
试试这个:
if (ricHistory.name2 &&
ricHistory.name2 instanceof Array &&
!ricHistory.name2.length) {
console.log('name2 is empty array');
} else {
console.log('name2 does not exists or is not an empty array.');
}
Run Code Online (Sandbox Code Playgroud)
上面的解决方案将告诉你richHistory.name2是否存在,是一个数组而且它不是空的.
试试这个有用的功能:
function isEmpty(obj) {
if(isSet(obj)) {
if (obj.length && obj.length > 0) {
return false;
}
for (var key in obj) {
if (hasOwnProperty.call(obj, key)) {
return false;
}
}
}
return true;
};
function isSet(val) {
if ((val != undefined) && (val != null)){
return true;
}
return false;
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66498 次 |
| 最近记录: |