Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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_Arrays_String_Variables_Push - Fatal编程技术网

Javascript 在比较字符串的字符后创建新数组&;排列

Javascript 在比较字符串的字符后创建新数组&;排列,javascript,arrays,string,variables,push,Javascript,Arrays,String,Variables,Push,我有一个myArray=[a,C,D,G,J,L,p] 和amyString=“ABCDEF” 我想创建一个新数组,只包含myString的字符,这些字符也可以在myArray中找到,因此myOtherArray=[a,C,D] 我认为代码应该是这样的,但它还不起作用 for (int i=0; i<myString.length(); i++) { for (int j=0; j<myArray.length(); j++) { if ((myString.charAt

我有一个
myArray=[a,C,D,G,J,L,p]

和a
myString=“ABCDEF”

我想创建一个新数组,只包含myString的字符,这些字符也可以在myArray中找到,因此
myOtherArray=[a,C,D]

我认为代码应该是这样的,但它还不起作用

for (int i=0; i<myString.length(); i++) {
  for (int j=0; j<myArray.length(); j++) {
    if ((myString.charAt(i)) == myArray[j]) {
      myOtherArray.push(myArray[j])
    }
  }
}

对于(inti=0;i您应该使用
=
来测试是否相等

if ((myString.charAt(i)) == myArray[j])

此外,在按下字母后添加一个
break
语句也可能是值得的。这使得整个操作更快(尽管如果阵列较小,这是一个微优化)如果
myArray
包含重复的条目,它还可以防止同一个字母被推两次。

您应该使用
=
来测试是否相等

if ((myString.charAt(i)) == myArray[j])

此外,在按下字母后添加一个
break
语句也可能是值得的。这使得整个操作更快(尽管如果阵列较小,这是一个微优化)如果
myArray
包含重复的条目,它还可以防止同一个字母被推送两次。

如果您尝试在浏览器的控制台中运行它(或只是检查错误日志),您将看到
int i=0
是错误的,
length
不是一个函数。将
int
替换为
var
(两者都有)和
length()
使用
length
(两者),它可以工作。

如果您尝试在浏览器的控制台中运行它(或只是检查错误日志),您将看到
int i=0
是错误的,并且
length
不是一个函数。将
int
替换为
var
(两者)和
length()
长度(两者都有),它可以工作。

非常感谢!我如何检查错误日志?我在记事本中写,在chrome中运行。非常感谢!我如何检查错误日志?我在记事本中写,在chrome中运行。