// 普通的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. ava Double: 四舍五入并设置小数点位数

    public static void main(String[] args) { // 1. 先乘后四舍五入, 再除; double d = 62.31060027198647; double d2 ...

  2. Vijos P1951 玄武密码 (AC自动机)

    描述 在美丽的玄武湖畔,鸡鸣寺边,鸡笼山前,有一块富饶而秀美的土地,人们唤作进香河.相传一日,一缕紫气从天而至,只一瞬间便消失在了进香河中.老人们说,这是玄武神灵将天书藏匿在此. 很多年后,人们终于在 ...

  3. 代码中特殊的注释技术——TODO、FIXME和XXX的用处 (转载)

    转自:http://blog.csdn.net/reille/article/details/7161942 作者:reille 本博客网址:http://blog.csdn.net/reille/, ...

  4. IPC进程之间通信的几种方式

    概念 进程间通信就是在不同进程之间传播或交换信息,那么不同进程之间存在着什么双方都可以访问的介质呢?进程的用户空间是互相独立的,一般而言是不能互相访问的,唯一的例外是 共享内存区 .但是,系统空间却是 ...

  5. Linux 系统管理命令 - free - 查看系统内存信息

    命令详解 重要星级: ★★★★★ 功能说明: free 命令用于显示系统内存状态,具体包括系统物理内存.虚拟内存.共享内存和系统缓存等. 语法格式: free [option] free [选项] 说 ...

  6. bzoj 2142: 礼物【中国剩余定理+组合数学】

    参考:http://blog.csdn.net/wzq_qwq/article/details/46709471 首先推组合数,设sum为每个人礼物数的和,那么答案为 \[ ( C_{n}^{sum} ...

  7. 创建swagger的springboot-stater,并在spring cloud zuul网关中引入

    Swagger 是一款RESTFUL接口的.基于YAML.JSON语言的文档在线自动生成.代码自动生成的工具. 通过在controller中添加注解,即可轻易实现代码文档化. Swagger提供ui界 ...

  8. solr的安装配置与helloworld

    一.安装solr 1.安装jdk环境和tomcat 2.解压solr压缩包,这里我解压到opt目录下 3.把/usr/local/solr-4.8.0/dist/solr-4.8.0.war部署到to ...

  9. C# 操作Access的Ole对象[转]

    原文链接 OLE对象数据类型 (1)OLE 对象用于使用 OLE 协议在其他程序中创建的 OLE 对象,如 Microsoft Word 文档. Microsoft Excel 电子表格.图片.声音或 ...

  10. SpringCloud+MyBatis+Redis整合—— 超详细实例(二)

    2.SpringCloud+MyBatis+Redis redis①是一种nosql数据库,以键值对<key,value>的形式存储数据,其速度相比于MySQL之类的数据库,相当于内存读写 ...