jq查找数组元素的位置

题目描述:
找出元素 item 在给定数组 arr 中的位置

输出描述:
如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1

输入:[ 1, 2, 3, 4 ], 3

输出:2


indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。


function indexOf(arr,item){
   if(Array.prototype.indexOf){ //因为老IE是没有indexOf这个方法的,所以要先判断
    return arr.indexOf(item);
  }else{
    for(var i=0;i<arr.length;i++){
        if(arr[i]===item){
            return i;
            }
    }
  }
   return -1;
}






方法2:

支持数组arr中的数据类型为对象, 数组, 等。
eg: var arr = [{age: 1}, '1', 2, true, [1,2]], 依然可以测试

JSON.stringify()方法将JavaScript对象转换为字符串

/**获取元素位置***/
function indexOf(arr,intem){
   if(!arr || !arr.length){
    return -1;
  }

   for(var i=0;len=arr.length; i<len;i++){
       //支持 arr[i]为对象,数组等
    if(JSON.stringify(arr[i]===JSON.stringify(item))){
       return i;
    }
  }
    return -1;
}

链接:https://www.nowcoder.com/questionTerminal/e7835a8113dd48afb15f77ef8d1dcb1d
来源:牛客网

转载于:https://www.cnblogs.com/srbc/p/9364651.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值