1

好的所以我有这段代码:

var el = {a:"b","isSel":true};
$.each(el,function(k,v){
  if(k=="isSel"){
    v=false
  }
})
console.log(el);

但这不会将 isSel 更改为 false ...任何线索?

4

2 回答 2

5

将其更改为

var el = {a:"b","isSel":true};
$.each(el,function(k,v){
  if(k=="isSel"){
    el[k]=false // <= this sets the property named k of el
  }
})
console.log(el);

请注意,如果您只想更改名为"isSel"el 的属性,则不必迭代:您可以简单地做

el["isSel"] = false;

或者

el.isSel = false;
于 2012-10-24T15:34:08.510 回答
0

不需要循环。可以按如下方式访问该值:

el.isSel = false;

或者

el["isSel"] = false;
于 2012-10-24T15:37:49.243 回答