Javascript 如何使我的代码输出六个真值? 功能弹跳器(arr){ 规则=[false,null,0,”,未定义,NaN]; 对于(i=0;i

Javascript 如何使我的代码输出六个真值? 功能弹跳器(arr){ 规则=[false,null,0,”,未定义,NaN]; 对于(i=0;i,javascript,Javascript,更新: 如果我答对了问题,我们需要在bouncer中检查,是否所有项目都存在于规则列表中 在这种情况下,我会像这样更改函数bouncer: function bouncer(arr) { rule=[false,null,0,"",undefined,NaN]; for (i=0;i<arr.length;i++){ dis=false; for(j=0;j<6;j++){ if(arr[i]===rule[j]){dis=true;}

更新:

如果我答对了问题,我们需要在bouncer中检查,是否所有项目都存在于
规则列表中

在这种情况下,我会像这样更改函数
bouncer

function bouncer(arr) {
  rule=[false,null,0,"",undefined,NaN];
  for (i=0;i<arr.length;i++){
    dis=false;
    for(j=0;j<6;j++){
      if(arr[i]===rule[j]){dis=true;}
      break;
    }
    console.log(dis);
  }
}

bouncer([false, null, 0, NaN, undefined, ""]);
这个解决方案怎么样:

const rule = [false, null, 0, "", undefined, NaN]

function bouncer(arr) {
  return arr.map((item) => {
    return rule.includes(item)
  })
}

bouncer([false, null, 0, NaN, undefined, ""])
更新:

如果我答对了问题,我们需要在bouncer中检查,是否所有项目都存在于
规则列表中

在这种情况下,我会像这样更改函数
bouncer

function bouncer(arr) {
  rule=[false,null,0,"",undefined,NaN];
  for (i=0;i<arr.length;i++){
    dis=false;
    for(j=0;j<6;j++){
      if(arr[i]===rule[j]){dis=true;}
      break;
    }
    console.log(dis);
  }
}

bouncer([false, null, 0, NaN, undefined, ""]);
这个解决方案怎么样:

const rule = [false, null, 0, "", undefined, NaN]

function bouncer(arr) {
  return arr.map((item) => {
    return rule.includes(item)
  })
}

bouncer([false, null, 0, NaN, undefined, ""])

您应该将功能更改为:

功能弹跳器(arr){
规则=[false,null,0,”,未定义,NaN];

对于(i=0;i,应将函数更改为:

功能弹跳器(arr){
规则=[false,null,0,”,未定义,NaN];

对于(i=0;ihavenchyk的答案中有一个小错误。

要将
arr[i]==rule[j]|isNaN(arr[i])&isNaN(rule[j])
更改为
arr[i]==rule[j]| typeof(arr[i])!==“string”&isNaN(arr[i])&isNaN规则[j])
哈文奇的答案中有一个小错误。

arr[i]==rule[j]|isNaN(arr[i])&isNaN(rule[j])
更改为
arr[i]==rule[j]| typeof(arr[i])!==“string”&isNaN(arr[i])&isNaN规则[j])

item!==NaN
将始终是
true
@Teemu啊,可能问题是关于规则列表中参数的存在,我没有从第一眼看到它
item!==NaN
将始终是
true
@Teemu啊,可能问题是关于规则列表中参数的存在,我没有得到它事实上,这不是我的答案:)事实上,这不是我的答案:)