javascript - 在 Javascript 中检查数组中元素的类型

标签 javascript arrays types element

刚开始使用 Javascript,正在尝试检查 array 中元素的类型:我有一个function需要两个函数 parameters 。我有一个array其中有 string 的组合和number元素。这个想法是触发functions基于样本中元素的类型array然后推送一个新的 element到一个新的array 。我不确定我可以在这里使用哪个内置函数。我试过indexOftypeof但这些似乎并没有达到目的,或者也许我做错了。下面是代码。非常感谢!

var arr1 = [3, "Hello", 5, "Hola"];

function setNewArray(arr, funct1, funct2){
    var arr2 = [];

    for(var i = 0; i < arr.length; i++){
        if(/*check if arr[i] is a string*/){
            arr2.push(funct1(arr[i]));
        }

        if(/*check if arr[i] is a number*/){
            arr2.push(funct2(arr[i]));
        }       
    }
    return arr2;
}


var numfunct = function(item){
    return item * 2;
}


var strfunct = function(item){
    return item + " " + "there";
}

var result = setNewArray(arr1, numfunct, strfunct);
console.log(result);

最佳答案

您可以使用 typeof 轻松完成此操作,如下所示

对于第一个代码块

if(typeof arr[i] === 'string'){
     arr2.push(   
     funct1(arr[i]));
}

第二个

if(typeof arr[i] === 'number'){
      arr2.push(
      funct2(arr[i]));
    }   

关于javascript - 在 Javascript 中检查数组中元素的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47048416/

相关文章:

javascript - 拉斐尔动画路径

javascript - 使用文本框计算数字

javascript - 如何在 javascript (jquery) 数组 onclick 中前五个

JavaScript for 循环 innerHTML 返回未定义

scala - 如何解决在逆变位置使用协变类型参数的问题

javascript - 为什么此正则表达式不适用于德语单词?

javascript - Jquery 单击另一个元素并显示选择选项

java 。如何生成其中包含一定数量的 1's and 0' 的所有整数?

c# - 将字符串、char类型转换为System.Windows.Forms.Keys

types - 奇怪的平等编译错误 : (No method 'equals(Any?): Boolean' available)