比较字符串

题目描述:

如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true。

举例,[“hello”, “Hello”]应该返回true,因为在忽略大小写的情况下,第二个字符串的所有字符都可以在第一个字符串找到。

[“hello”, “hey”]应该返回false,因为字符串”hello”并不包含字符”y”。

[“Alien”, “line”]应该返回true,因为”line”中所有字符都可以在”Alien”找到。

代码实现:

function mutation(arr) {
  var str1 = arr[0].toLowerCase();
  var str2 = arr[1].toLowerCase();
  for(var i=0; i<str2.length; i++){
    if(str1.indexOf(str2[i]) < 0){
      return false;
    }
  }
  return true;
}

mutation(["hello", "hey"]);

分析: 根据题目描述,只需要检查一下数组里第二个元素是不是都包含在数组第一个元素里即可,在这之前需要先把两个字符串统一一下,都转成小写形式(str.toLowerCase())。

String.indexOf() 方法返回调用 String 对象中第一次出现的指定值的索引,开始在 fromIndex进行搜索。如果未找到该值,则返回-1。
该方法包含两个参数,第一个searchValue是必须的,它表示被查找的值;第二个是可选参数fromIndex,表示调用该方法的字符串中开始查找的位置,默认为0。

对应还有一个str.lastIndexOf()方法,它从该字符串的后面向前查找。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值