使用in for循环更改值

时间:2017-11-30 03:54:46

标签: javascript object for-in-loop

我正在尝试编写一个for in循环函数,该函数会将大于20的任何值更改为0

这是我到目前为止所尝试的内容:

function greaterThan20(obj) {
  for (var key in obj) {
    if (obj[key] > 20) {
      obj[key] = 0;
    }
  }
  return obj
}

2 个答案:

答案 0 :(得分:1)

尝试以下方法:

function greaterThan20(obj){
  for(var key in obj) {
      if(obj.hasOwnProperty(key)) {
          if(obj[key] > 20){
            obj[key] = 0;
          }
      }
  }
  return obj;
}
var obj = {'one':10,'two':25,'three':30}
console.log(greaterThan20(obj))

答案 1 :(得分:-1)

下面是替换值大于20的函数

function greaterThan20(obj){
  for (int a=0;a<obj.length;a++){
    if (obj[i] > 20){
      obj[i] = 0;
    }
  }
 return obj
}