获取数组中非null的特定值的位置(第一个和最后一个)
Obtaining the position (first and last) of a specific value that is not null in a array
我有下一个数组:
[null,null,null,null,null,null,2,10,29,43,45,40,54,39,13,1,null,null,null,null,null]
我需要知道数组中第一个不为null的位置是什么,最后一个也不为null。
在这个特定的例子中,第一个将是6(将0计数为位置1)和15。
感谢
var firstPos = -1, lastPos = -1;
for(var i = 0; i < arr.length; i++) {
if(arr[i] !== null) {
if(firstPos == -1) {
firstPos = i;
}
lastPos = i;
}
}
使用非标准数组方法:
var arr = [null,null,null,null,null,null,2,10,29,43,45,40,54,39,13,1,null,null,null,null,null];
var mapped = arr.map(function (i) {
"use strict";
return i !== null;
});
var first = mapped.indexOf(true);
var second = mapped.lastIndexOf(true);
map和indexOf以及lastIndexOf都需要IE9+浏览器或垫片。不过,它们看起来确实很酷。
相关文章:
- 而循环只设置php中输入字段中的第一个值
- 错误:$injector:modulerr模块错误(我的第一个SPA应用程序)
- IE11中的第二个调用取消了第一个Fetch API调用
- Javascript XMLHttpRequest——只有第一个POST请求有效
- 使用javascript或angularjs特定过滤器搜索字符串中第一个img标记的json值
- 将OnClick函数设置为<ul>,最后一个ul是擦除第一个ul-s
- RxJS油门行为;立即获取第一个值
- Angular UI网格:如何通过第一个UI网格中的按钮使第二个UI网格可见
- 选择多个实例中的第一个
- 如何在调用下一个请求之前完成第一个Ajax Get请求
- 在 Physicsjs 中的固定位置制作一个身体
- Lodash:返回对象的第一个键,该对象的值(即数组)中有一个给定的元素(即字符串)
- 看起来第一个console.log是'It’不太对
- 与杜兰达尔合作的第一个JavaScript项目.尝试从第三方 API 获取数据
- 节点发布错误对象的第一个“属性”
- Javascript:表单验证getElementById仅返回第一个id元素
- 仅将 CSS 规则应用于
中的第一个 ,而不分配类/ID - JS在隐藏未定义的值后仅从数组中返回第一个id的值
- 高图表,检测点是否在堆栈中的第一个
- 第一个next()调用的参数所在的位置