使用 IF 运算符对给定数组中的字母数字和非字母数字元素执行不同的操作

Use IF operator to diverge actions on alphanumeric and non-alphanumeric elements in a given array

本文关键字:数字 元素 执行 操作 IF 数组 运算符 使用      更新时间:2023-09-26

我需要帮助来处理可以同时包含字母数字和非字母数字元素的数组。

我需要对字母数字执行一个操作

,对非字母数字执行一个不同的操作。

我一直在尝试不同的方法来声明语句 If 以分散这两个选项,但我没有想出正确的公式。

能得到的最接近的解决方案太脏了,我只是告诉程序元素必须与"不同,与"!"不同,与"?"不同。不是一个干净的解决方案。有人可以帮忙吗?也许使用正则表达式?

  var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
  var i=0;

  while(i<myArray.length){
  if(myArray[i]!=" " && myArray[i]!="!"&& myArray[i]!="?"&& myArray[i]!="."){
  //PERFORM ACTION 1 Example:
  return: "Hello";
  }

  else{
  //PERFORM ACTION 2 Example:
  return: "Goodbye";
  }
  i++;
  }

我已经尝试了以下正则表达式,但没有成功:

if(myArray[i]!=[A-Za-z0-9_])

以及:

if(myArray[i]!=/'W/g)

它们都无法:(请帮忙。

谢谢。

解决方案:

var myArray=["H","O","W"," ","A","R","E"," ","U","?"];
var i=0;
var alphaChecker = new RegExp("^[a-zA-Z0-9_]*$");

while(i<myArray.length){
if(alphaChecker.test(myArray[i])){
//PERFORM ACTION 1 Example:
myArray[i]= "Hello";
}

else{
//PERFORM ACTION 2 Example:
myArray[i]= "Goodbye";
}
i++;
}
return myArray;

这很好用。