javascript - 如何在 JavaScript 中获取数组中元素的索引
问题描述
为什么我没有正确获取此循环中不为 0 的每个数组元素的索引?
这是我的代码:
let st = "0,1,0,0,1,1";
let arr = [];
arr = st.split(',');
for(var i = 0; i < arr.length; i++){
if( arr[i] != 0){
console.log(arr.indexOf(i))
}
}
解决方案
实际上,您寻找的是索引,而不是价值。任何大于一的指数都会产生-1
。
您可以直接获取索引。
let st = "0,1,0,0,1,1";
let arr = [];
arr = st.split(',');
for (var i = 0; i < arr.length; i++) {
if (arr[i] != 0) {
console.log(i);
}
}
推荐阅读
- c++ - 为什么我的默认移动构造函数不是 noexcept?
- python - mysql点击按钮后复制插入数据失败
- reactjs - 输入块热键
- javascript - Unable to get the socket data through binance Websockets
- sql - DB2 使用 CURRENT PACKAGESET 或 CLIENT_APPNAME 创建临时表创建列
- javascript - navigator.getUserMedia 函数未定义
- reactjs - 一种状态下降,一种没有
- image - 列出了 docker 图像,但无法删除
- python - np.newaxis() 的替代方法,用于在比较数组时节省内存
- sql - 有没有办法在由外键链接的单独的 sql 数据库表中创建两个条目?