这应该非常简单,但由于某种原因我无法让它工作。我有一个页面上可能存在的类名数组。我循环遍历这个数组并检查该类是否存在,如果存在,我将该对象添加到另一个数组中。
jQuery:
var class_list = ['class1', 'class2', 'class3'];
var classes = {};
$(function(){
if( class_exists() ){
console.log('Classes: '+JSON.stringify(classes));
}
});
function class_exists(){
var exists = false;
for( var i=0; i<class_list.length; i++ ){
//check if the class exists:
if( $('.'+class_list[i])[0] ){
classes[class_list[i]] = $('.'+class_list[i]);
exists = true;
}
}
return exists;
}
其输出是Uncaught TypeError:将循环结构转换为JSON
。我期望看到类似 {'class1': [object Object], 'class2': [object Object]}
的内容。这应该很简单,我哪里出错了?
最佳答案
这一切都是因为这一行:
console.log('Classes: '+JSON.stringify(classes));
由于您使用浏览器控制台,因此只需使用
console.log('Classes: ', classes);
至少我的浏览器(chrome)支持渲染对象。如果您使用的是nodejs,我使用util.inspect
来克服同样的问题。
关于javascript - 使用 jQuery 检查页面上是否存在多个不同的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28751308/