将数字和非数字的数组拆分为两个单独的数组

时间:2017-02-01 00:33:53

标签: javascript arrays loops numbers

我对javascript很新,我试图创建一个函数,它接受数字的混合输入,然后循环遍历数组,以便将它们分成两个较新的数组,以便我可以操作它们进一步。

所以,如果我有输入 1,,2,B,3,C 4,d,

我想制作两个新的数组 1,2,3,4和a,b,c,d

到目前为止,我已经能够将输入字符串拆分为逗号,以便我现在有

1a2b3c4d

我现在需要做的就是将数字和非数字分开。我在考虑使用两个循环:一个检查

if(isNan.array [n] == True)

然后尝试找到一种方法,使用循环将字母存储到变量中,然后使用另一个循环对使用另一个if函数的数字执行此操作。

这是我应该怎么做的,你对如何去做有什么建议吗?

编辑:

我现在有了这个代码来检查字母:

if (isNaN(splitResult[L])) {
        for (i = 0; i < splitResult; i++) {
            letterArray.add(splitResult[L]);
            L = L + 1

当我尝试将结果输出到一个盒子来计算字母时(使用变量L),什么都没有显示出来。我怀疑我是否制造了一个新阵列

2 个答案:

答案 0 :(得分:0)

您需要做的就是遍历数组,您可以使用数组原型forEach。或者您可以使用普通的for循环来检查数组的每个元素。您现在可以检查每个元素是否isNaN,然后适当地推入正确的数组。您可以使用下面的代码段

const yourArray = ['1','a','2','b','3','c','4','d'];
const letterArray = [];
const numberArray = [];
yourArray.forEach((eachItem) => {
  if(isNaN(eachItem)){
    letterArray.push(eachItem);
  } else {
    numberArray.push(eachItem);
  }
});

console.log(letterArray, numberArray);

答案 1 :(得分:0)

只是为了完成,首先将字符串拆分为数组:)

import adodbapi
ServerName = "ServerName"
MSQLDatabase = "Runtime"
username = "aaUser"
password = "pwUser"
conn = adodbapi.connect("PROVIDER=INSQL;Data Source={0};Database={1};trusted_connection=yes;UID={2};PWD{3};".format(ServerName,MSQLDatabase,username,password))