Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript检查字母是否包含在字符串中_Javascript - Fatal编程技术网

JavaScript检查字母是否包含在字符串中

JavaScript检查字母是否包含在字符串中,javascript,Javascript,我有下面的JavaScript函数,我想使用它检查名为mutation的数组的first元素是否包含第二个元素的所有字母 function mutation(arr) { let test = arr[1].toLowerCase(); let target = arr[0].toLowerCase(); let split = test.split(''); split.forEach((elem)=>{ if(target.indexOf(elem)

我有下面的JavaScript函数,我想使用它检查名为
mutation
的数组的first元素是否包含第二个元素的所有字母

function mutation(arr) {
  let test    = arr[1].toLowerCase();
  let target  = arr[0].toLowerCase();

  let split = test.split('');

  split.forEach((elem)=>{
    if(target.indexOf(elem) < 0 ) {
      return false;
    }
  });
  return true;
}

mutation(["hello", "hey"]);
功能突变(arr){
让test=arr[1].toLowerCase();
让target=arr[0].toLowerCase();
让分割=测试分割(“”);
split.forEach((elem)=>{
if(目标索引of(elem)<0){
返回false;
}
});
返回true;
}
突变([“你好”,“嘿]);
现在它应该显示布尔值
false
,因为字母y不存在于helloword中。但事实并非如此


有什么我做错了吗?

ForEach中的Return语句不会从函数返回,您可以使用简单的for循环或reduce来在线获取最终结果

功能突变(arr){
让test=arr[1].toLowerCase();
让target=arr[0].toLowerCase();
让分割=测试分割(“”);
const result=split.reduce((acc,curr)=>acc和target.includes(curr),true);
返回结果;
}
log(突变(['hello','y'])您可以使用

功能突变(arr){
让test=arr[1].toLowerCase();
让target=arr[0].toLowerCase();
让分割=测试分割(“”);
返回split.every(x=>target.includes(x));//检查'target'中是否存在'split'的所有字母`
}
log(突变([“你好”,“你好]));
log(突变([“你好”,“你好]));

log(变异([“helloworld”,“lloword”])您可以尝试另一种方法来获得预期的结果:

function mutation(arr) {
  let test    = arr[1].toLowerCase().split('').join('');
  let target  = arr[0].toLowerCase().split('').join('');
  return target.includes(test);
}

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

坚持使用更经典的方法:

console.log(变异([“你好”,“你好]));
功能突变(args){
const target=args[0]。toLowerCase();
const test=args[1]。toLowerCase();
对于(设i=0;i
我会:

功能突变(arr){
让test=arr[1].toLowerCase();
让target=arr[0].toLowerCase();
返回目标。包括(测试);
}
log(突变([“你好”,“你好]));

log(突变([“helloworld”,“hello”])
您不能从内部
forEach
返回
。请参考哦。我懂了!!!谢谢你提供的信息。
mutation([“hello”,“helo”])
应该返回true吗?我认为这行不通。尝试使用
['hello world','hello']
。排序后的字符串是
[“dehlloorw”,“ehllo”]
,其中
包括
返回
false