ES5和ES6新的操作数组的方法(常用)
// 普通的for循环
// var arr = ['张飞', '赵云', '马超', '刘备']
// for (var i = 0; i < arr.length; i++) {
// console.log(arr[i])
// }
// foreach方法:
// 让数组中的每个元素都执行一次function
// var arr = ['张飞', '赵云', '马超', '刘备']
// arr.foreach(function(item, index) {
// console.log(item, index)
// })
// map方法 映射
// map方法和foreach很像, 要求每个函数都返回一个结果, 得到一个新数组
// var arr = [1, 2, 3, 4]
// // 要求: 给数组的每一项都求平方 [1, 4, 9, 16]
// let newarr = arr.map(function(item, index) {
// return item * item
// })
// console.log(newarr)
// var arr = [
// { id: 1, age: 18 },
// { id: 2, age: 20 },
// { id: 3, age: 55 },
// { id: 4, age: 40 }
// ]
// // 要求:求出最大的age
// var newarr = arr.map(function(item) {
// return item.age
// })
// var max = math.max.apply(null, newarr)
// console.log(max)
// filter方法的使用
// filter:过滤, 和map一样,也会返回新数组,保留哪些返回true的元素
// 将数组中工资超过5000的值删除
// var arr = [1000, 5000, 20000, 3000, 10000, 800, 1500]
// var newarr = arr.filter(function(item) {
// return item <= 5000 // 如果值小于等于5000 返回true
// })
// console.log(newarr)
// some: 一些
// some方法整体会返回一个布尔值, 如果有某一个函数返回了true,那么整个结果就是true
// 判断数组中是否包含奇数。。 数组中是否全是偶数
// var arr = [2, 4, 6, 8, 10, 12]
// let flag = arr.some(function(item) {
// return item % 2 === 1
// })
// console.log(flag)
// every: 每个
// every方法会返回一个布尔值, 如果所有的函数都返回true,结果才是true
// 判断数组中的元素是否全是偶数
// var arr = [2, 4, 6, 8, 10, 12]
// var flag = true // 假设全是偶数
// for (var i = 0; i < arr.length; i++) {
// if (arr[i] % 2 === 1) {
// flag = false
// break
// }
// }
// if (flag) {
// console.log('全是偶数')
// } else {
// console.log('不全是偶数')
// }
// var arr = [2, 4, 6, 8, 10, 11]
// let flag = arr.every(function(item) {
// return item % 2 === 0
// })
// console.log(flag)
// find: 查找
// 返回数组中第一个返回true的那个值
// var array = [5, 12, 8, 130, 44]
// let result = array.find(function(item) {
// return item > 10
// })
// console.log(result)
// findindex: 返回数组中第一个返回true的那个值的下标
// var array = [5, 12, 8, 130, 44]
// let result = array.findindex(function(item) {
// return item > 10
// })
// console.log(result)
var arr = [
{ id: 1, age: 18 },
{ id: 2, age: 20 },
{ id: 3, age: 55 },
{ id: 4, age: 40 }
]
// 需求: 把age为20的那项删除
var idx = arr.findindex(function(item) {
return item.age === 20
})
arr.splice(idx, 1)
console.log(arr)
推荐阅读
-
Java中数组操作 java.util.Arrays 类常用方法的使用
-
Vue实现动态添加或者删除对象和对象数组的操作方法
-
ES6数组扩展常用的方法讲解
-
浅谈ES6新增的数组方法和对象
-
搜索功能(五)03-搜索关键字历史重复记录-数组去重操作——es6 set类数组-数据结构-数组去重 & 三个点(...)方法-对象的延展操作-拆解数组
-
ES5和ES6新的操作数组的方法(常用)
-
JavaScript中常用的数组操作方法
-
关于JS中this指向和ES5中常用的方法
-
ES6数组复制和填充方法copyWithin()、fill()的具体使用
-
javascript中数组(Array)对象和字符串(String)对象的常用方法总结