// 普通的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)

ES5和ES6新的操作数组的方法(常用)的更多相关文章

  1. 关于ES3、ES5、ES6以及ES7所有数组的方法(api)的总结

    起因:工作用经常用到操作数组的方法,这里进行一下总结,我尽量以简洁的语言概括每个方法(api)的作用.如果您想快速定位,可以Control+F 然后搜相应的方法即可定位 :) ES3的数组方法 joi ...

  2. 一些ES5的操作数组的方法

    在ES5规范中新增了不少操作数组的方法,特此罗列一下以备使用 1. forEach循环 有点类似jQuery的each循环 [12,23,36,4,5].forEach(function(v,k){ ...

  3. thinkphp中cookie和session中操作数组的方法

    thinkphp中cookie和session中操作数组的方法 一.ThinkPHP模板中如何操作session,以及如果session中保存的是数组的情况 在ThinkPHP的模板中操作sessio ...

  4. ES5和ES6中对于继承的实现方法

    在ES5继承的实现非常有趣的,由于没有传统面向对象类的概念,Javascript利用原型链的特性来实现继承,这其中有很多的属性指向和需要注意的地方. 原型链的特点和实现已经在之前的一篇整理说过了,就是 ...

  5. javascript中slice() splice() concat()操作数组的方法

    这三个操作数组,哪个返回一个新数组呢.上代码 splice()方法,用于插入,删除和替换. var arr=[1,2,3,4,5]; var arr1=arr.splice(1,3); console ...

  6. JavaScript中操作数组的方法

    JavaScript Array 对象 对数组操作的方法分为两种 一种是会改变原始数组的变异方法,还有一种是不会改变原始数组的非变异方法. 总结 巧记 Push() 尾部添加 pop() 尾部删除 U ...

  7. [js]es6语法: 字符串和数组的方法

    s的方法 根据index取value: 取首尾项,arr[0], arr[arr.length-1] 根据value取index(判断是否包含子字符串): s.indexOf 栗子: 'maotai' ...

  8. javascript常见操作数组的方法

    在 JavaScript 中,判断一个变量的类型尝尝会用 typeof 运算符,在使用 typeof 运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,它都返回 "obj ...

  9. php数组实现根据某个键值将相同键值合并生成新二维数组的方法

    $infos = array( array( 'a' => 36, 'b' => 'xa', 'c' => '2015-08-28 00:00:00', 'd' => '201 ...

随机推荐

  1. 浅谈JAVA中如何利用socket进行网络编程(二)

    转自:http://developer.51cto.com/art/201106/268386.htm Socket是网络上运行的两个程序间双向通讯的一端,它既可以接受请求,也可以发送请求,利用它可以 ...

  2. IDC 内网机器 通 过 iptables SNAT上网的配置方法

    有三台机器, A .B .C,其中A机器有外网和内网IP,B和C只有内网,我们配置B和C二台机器通过A机器来上外网. 假设A机器 外网IP为: 60.12.13.14  内网IP为: 192.168. ...

  3. Fiddler对https抓包时,提示"HTTPS decryption is disabled."原因及破解

    Fiddler对https抓包时,提示"HTTPS decryption is disabled." 原因:没有启用 https 解密. 破解: ----------------- ...

  4. bzoj 2876: [Noi2012]骑行川藏【拉格朗日乘数法+二分】

    详见: http://blog.csdn.net/popoqqq/article/details/42366599 http://blog.csdn.net/whzzt/article/details ...

  5. 浅谈扩展欧几里得[exgcd] By cellur925

    关于扩展欧几里得从寒假时就很迷,抄题解过了同余方程,但是原理并不理解. 今天终于把坑填上了qwq. 由于本人太菜,不会用markdown,所以这篇总结是手写的(什么).(字丑不要嫌弃嘛) ****** ...

  6. [POI2012]Vouchers

    Description 考虑正整数集合,现在有n组人依次来取数,假设第i组来了x人,他们每个取的数一定是x的倍数,并且是还剩下的最小的x个. 正整数中有m个数被标成了幸运数,问有哪些人取到了幸运数. ...

  7. 找规律/贪心 Codeforces Round #310 (Div. 2) A. Case of the Zeros and Ones

    题目传送门 /* 找规律/贪心:ans = n - 01匹配的总数,水 */ #include <cstdio> #include <iostream> #include &l ...

  8. 题解报告:hdu 1229 还是A+B

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1229 Problem Description 读入两个小于10000的正整数A和B,计算A+B.需要注 ...

  9. 12c pdb expdp use DATA_PUMP_DIR meet ORA-39145

    ORA-39002: invalid operation ORA-39070: Unable to open the log file. ORA-39087: directory name DATA_ ...

  10. 使用Jquery1.9 版本 来实现全选

    在使用Jquery实现全选以及反选的时候, 使用attr()实现的时候,在浏览器第一次运行可以全选,但是第二次再全选,不管用.  通过查找资料,用 prop()方法代替attr()方法就行了. 注意: ...