为了账号安全,请及时绑定邮箱和手机立即绑定

下列例子使用indexOf()为什么为true,想要得到false怎么改?

下列例子使用indexOf()为什么为true,想要得到false怎么改?

Smart猫小萌 2018-12-12 09:19:24
想要实现的功能是验证arr[2]中的元素是否都在arr[1]中function mutation(arr) {  var newStr1 = arr[0].toLowerCase(),  newStr2 = arr[1].toLowerCase();  for(var i=0; i<newStr2.length; i++) {    if(newStr1.indexOf(newStr2[i]) !== -1) {      return true;    }    return false;  }  }mutation(["hello", "hey"]);  //true,想要得到false
查看完整描述

1 回答

?
慕工程0101907

TA贡献1887条经验 获得超5个赞

// arr[0] 中包含 arr[1] 中的全部字符

function mutation(arr) {

    var newStr1 = arr[0].toLowerCase(),

        newStr2 = arr[1].toLowerCase();


    for (var i = 0; i < newStr2.length; i++) {

        if (!~newStr1.indexOf(newStr2[i])) {

            return false;

        }

    }


    return true;

}


// arr[1] 属于 arr[0]

function mutation(arr) {

    var newStr1 = arr[0].toLowerCase(),

        newStr2 = arr[1].toLowerCase();


    return !!~newStr1.indexOf(newStr2);

}


查看完整回答
反对 回复 2019-01-09
  • 1 回答
  • 0 关注
  • 501 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信