【发布时间】:2014-02-14 15:24:21
【问题描述】:
我有多个 div 返回一个这样的数组:
[{"k":"Model","v":"box"},{"k":"Color","v":"blue"},{"k":"Size","v":"med"},{"k":"Type","v":"good"}]
有时,非数组项会返回,我想忽略这些。
可以是空格或随机无序 blank 列表。
所以我只想处理返回的数组,其余的留空。
我如何检查它是否是数组并忽略其余部分?
jQuery('.overview').each(function () {
var $overview = jQuery(this),
specs = jQuery.parseJSON($overview.html());
if ( !! specs) {
$overview.html('<div class="bullet_spec"></div>');
jQuery.each(specs, function () {
$overview.children('div').append('<ul class="specs"><li class="label">' + this.k + ' : ' + this.v + '</li></ul>');
});
} else { // leave blank?? not sure what to do here
}
});
这是我的小提琴:http://jsfiddle.net/veGPN/
谢谢
【问题讨论】:
-
有
jQuery.isArray()... -
if( !! specs )?这是一个双重否定,为什么不只是if(specs)? -
if (specs && Array.isArray(specs) && specs.length)
标签: javascript jquery arrays each