ES5新增数组方法

ES5新增数组方法

一,静态方法

1.isArray()

-用于确定传递的值是否是一个Array.
-如果值是Array,则为true ;否则为false

//语法格式
Array.isArray(value)
//value为需要检测的值。
// 下面的函数调用都返回 true
Array.isArray([]);
Array.isArray([1]);
Array.isArray(new Array());
// 下面的函数调用都返回 false
Array.isArray();
Array.isArray({});
Array.isArray(null);
Array.isArray(undefined);
Array.isArray(17);

二,原型(实例)方法

-以下方法参数都是回调函数,回调函数有三个参数(element, index, array)
-element:值,index: 索引,array: 数组本身,用不到的形参可省略

1.forEach()

-遍历数组,为每个数组元素调用函数,有多少个元素,就执行多少次操作
-不会改变原数组,返回值undefined
-没办法中止或跳出forEachO) 循环。如需中止或跳出循环,forEach() 方法不是应当使用的工具

 // forEach 迭代(遍历)数组
        var arr = [1,2,3]
        var sum = 0
        arr.forEach(function(value,index,array){
            console.log('每个数组元素',+value);
            console.log('每个数组元素的索引号'+index);
            console.log('数组本身'+array);
            sum+=value
        })
        console.log(sum);     //6
image.png
2.some()

-不会改变原数组,返回布尔值
-查找满足条件的元素是否存在,如找到第一个满足条件的元素就终 止循环
-数组中是否有满足条件的元素,只要有一-个元素满足,就返回true。 无满足条件的,返回false

 // some   查找数组中是否有满足条件的元素   true/false   找到第一个满足条件的就不往后查找了,终止循环
        var  arr  =  [10,30,4]
        var flag =   arr.some(function(value,index,array){
            // return   value>=20    //true
            return   value<3     //false
        })
        console.log(flag);

        var  arr1  =  ['pink','skyblue','red']
        var flag1= arr1.some(function(value,index,array){
            return   value=='red'   //true
        })
        console.log(flag1);
image.png
3.every()

-遍历数组,不会改变原数组,返回布尔值
-当数组所有元素都满足测试条件,才返回true,只要有一项不满足就返回false

    <script>
        var arr = [1000, 2000,3000 ]
        var flag = arr. every(function (a,b,c) {
            console.log(a +"==="+ b +"==="+c)//1000===0====1000, 2000, 3000
            return a > 2000;//数组中的每 个元素的值都要大于2000的情况,最后才返回true
        })
        console.log(flag) //false
    </script>
image.png
4.filter()

-过滤数组,将满足条件的元素过滤出来,组成新数组并返回它
-如没有任何数组元素通过测试,则返回空数组

// filter  筛选数组
        var  arr =  [12,66,4,88,15]
        var newArr = arr.filter(function(value,index,array){
            return value%2===0    //筛选数组里面为偶数的值
            // return value>=60    //返回的是一个新数组,所有满足条件的都会返回到这个新数组,所以需要一个东西接收
        })
        console.log(newArr);
image.png
5.reduce()
array.reduce(function(preval, item, index, arr), arr1)

preval 必需。初始值, 或者计算结束后的返回值。
item 必需。当前元素
index 可选。当前元素的索引
arr 可选。当前元素所属的数组对象。
arr1 可选。传递给函数的初始值

-不会改变原数组
-返回值:使用"reducer"回调函数遍历整个数组后的结果

var arr = [10, 20, 30, 40]
    var newArr = arr.reduce(function(preval, item, index, arr) {
        console.log(preval, item, index, arr)
        return preval + item
    })
    console.log(newArr)
image.png
6.map()

map() 方法使用为每个数组元素调用函数的结果创建新数组。

map() 方法按顺序为数组中的每个元素调用一次提供的函数。

map() 对没有值的数组元素不执行函数。

map() 不会改变原始数组。

var  arr=[1,2,3,4,5,6,7]
    var  a = arr.map(value => {
    return value * 2
    })
    console.log(a);//[2, 4, 6, 8, 10, 12, 14]
image.png
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容