forEach
遍历但不能中断
<script>
var list = [
{ "id": 1, "name": "a" },
{ "id": 2, "name": "b" },
{ "id": 3, "name": "c" },
{ "id": 4, "name": "d" },
{ "id": 5, "name": "e" },
{ "id": 6, "name": "f" },
{ "id": 7, "name": "g" }
];
list.forEach(time => {
console.log(time.id + "---" + time.name);
});
</script>
some
可以通过return true中断
<script>
var list = [
{ "id": 1, "name": "sfsd" },
{ "id": 2, "name": "a" },
{ "id": 3, "name": "a" },
{ "id": 4, "name": "a" },
{ "id": 5, "name": "a" },
{ "id": 6, "name": "a" },
];
list.some(time=>{
if(time.id === parseInt(3)){
list.splice(3,1);
return true;
}
});
console.log(list);
</script>
filter
遍历后将数据装入另一个数组
<script>
var list = [
{ "id": 1, "name": "sfsd" },
{ "id": 2, "name": "a" },
{ "id": 3, "name": "a" },
{ "id": 4, "name": "a" },
{ "id": 5, "name": "a" },
{ "id": 6, "name": "a" },
];
//返回所有包含的对象
var arr = list.filter(time=>{
if(time.name.includes('a')){
return time;
}
});
console.log(arr);
</script>
findIndex
返回对应的index元素
<script>
var list = [
{ "id": 1, "name": "sfsd" },
{ "id": 2, "name": "a" },
{ "id": 3, "name": "a" },
{ "id": 4, "name": "a" },
{ "id": 5, "name": "a" },
{ "id": 6, "name": "a" },
];
//返回找到的第一个元素的下标
var el = list.findIndex(time => {
//字符串的方法, 包含为true,反之为false
if (time.name.includes('a')) {
return time;
}
});
console.log(el);
</script>