检查对象数组以检查condition.conditions是 对象数组最初是空的。
1.如果数组为空,则在发生操作时,将对象添加到数组中。
2.如果数组有对象检查它是否已经存在。如果发现从数组中删除该对象,否则添加到数组。
我试过下面的代码。
var arr = [];
$(document).ready(function() {
$(".rating").click(function() {
var idx = $(this).closest('td').index();
var userskill = {
tech : $(this).closest('td').siblings('td.tech').text(),
skill : $('#listTable thead th').eq(idx).text(),
rValue : $(this).val()
}
add(userskill);
});
});
function add(userskill) {
var flag = false;
arr.push(userskill);
for(var i in arr){
if((arr[i].tech==userskill.tech)&&(arr[i].skill==userskill.skill)){
arr.splice(i, 1);
}
}
答案 0 :(得分:0)
我认为Underscore.js对你的问题很有意思。例如。 isEqual方法允许对象比较。
编辑:
使用_.findWhere的代码:
function add(userskill) {
if(!_.findWhere(arr, userskill)) {
arr.push(userskill);
}
}