<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>arr方法</title>
<script>

// Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组
// const bar=["a","b","c"];
// alert(Array.from(bar));
// alert(Array.from('foo'));

// Array.isArray() 用于确定传递的值是否是一个 Array。
// alert(Array.isArray([1,2,3]));//true
// alert(Array.isArray({foo:123}));//false
// alert(Array.isArray("foobar"));//false

//Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。

// Array.of() 和 Array 构造函数之间的区别在于处理整数参数:Array.of(7) 创建一个具有单个元素 7 的数组,而 Array(7) 创建一个包含 7 个 undefined 元素的数组

// alert(Array.of(7));[7]
// alert(Array.of(1,2,3));//[1,2,3];
// alert(Array(7));//[7]
// alert(Array(1,2,3));//[1,2,3];

// every() 方法测试数组的所有元素是否都通过了指定函数的测试

// 下例检测数组中的所有元素是否都大于 10
// function isBigEnough(element,index,array) {
// return (element >= 10);
// }
// var passed = [12, 5, 8, 130, 44].every(isBigEnough);
// alert(passed);//false
// passed=[12, 54, 18, 130, 44].every(isBigEnough);// true
// alert(passed)

// fill() 方法用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。
// var array1 = [1, 2, 3, 4];
// // fill with 0 from position 2 until position 4
// console.log(array1.fill(0, 2, 4));
// // expected output: [1, 2, 0, 0]

// // fill with 5 from position 1
// console.log(array1.fill(5, 1));
// // expected output: [1, 5, 5, 5]

// // console.log(array1.fill(6));
// // expected output: [6, 6, 6, 6]

// filter() 方法创建一个新数组, 其包含通过所提供函数实现的测试的所有元素。
// function isBigEnough(value) {
// return value >= 10;
// }
// var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
// alert("数组"+filtered);
// const isBigEnough = value => value >= 10;
// let [...spread]= [12, 5, 8, 130, 44];

// let filtered = spread.filter(isBigEnough);
// alert(filtered);

// find() 方法返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。
// function isBigEnough(element) {
// return element >= 15;
// }
// alert([12, 5, 8,10, 44].find(isBigEnough));

// findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1
// function isBigEnough(element) {
// return element >= 15;
// }
// alert([12, 5, 8, 130, 44].findIndex(isBigEnough)); //3

// indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1
// let a=[2, 9, 7, 8, 9];
// // alert(a.indexOf(2)); // 0
// // alert(a.indexOf(6)); //-1
// // a.indexOf(7); // 2
// // a.indexOf(8); // 3
// alert(a.indexOf(9)); // 1

// if (a.indexOf(3) === -1) {
// // element doesn't exist in array
// }

// join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。
// let a=['Wind','Rain','Fire'];
// console.log(a.join("*")); // 'Wind*Rain*Fire'

// map() 方法创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。
// let numbers = [1, 5, 10, 15];
// let doubles = numbers.map( x => x ** 2);
// alert(numbers); //[1, 5, 10, 15]
// alert(doubles);//[1, 25, 100, 225]

// pop()方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。
// let a = [1, 2, 3];
// console.log(a.length); // 3
// a.pop(); // 3

// console.log(a); // [1, 2]
// // a.length; // 2

// push() 方法将一个或多个元素添加到数组的末尾,并返回新数组的长度。
// var numbers=[1,2,3];
// numbers.push(4);
// console.log(numbers); // [1, 2, 3, 4]

// numbers.push(5, 6, 7);

// console.log(numbers); // [1, 2, 3, 4, 5, 6, 7]

// shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
// let a = [1, 2, 3];
// let b = a.shift();
// console.log(a); // [2, 3]
// console.log(b); // 1

// slice() 方法返回一个从开始到结束(不包括结束)选择的数组的一部分浅拷贝到一个新数组对象。原始数组不会被修改
// var animals=['ant','bison','camel','duck','elephant'];
// console.log(animals.slice(4));//删除第4个

// sort() 方法用就地( in-place )的算法对数组的元素进行排序,并返回数组。 sort 排序不一定是稳定的。默认排序顺序是根据字符串Unicode码点。
// var fruit = ['cherries', 'apples', 'bananas'];
// alert(fruit.sort());

// var scores = [1, 10, 21, 2];
// console.log(scores.sort());
//
// splice() 方法通过删除现有元素和/或添加新元素来更改一个数组的内容。
// var myFish = ['angel', 'clown', 'mandarin', 'sturgeon'];//索引从1开始

// myFish.splice(2, 0,'drum'); // 在索引为2的位置插入'drum'
// console.log(myFish)// myFish 变为 ["angel", "clown", "drum", "mandarin", "sturgeon"]

// // myFish.splice(2, 1); // 从索引为2的位置删除一项(也就是'drum'这一项)
// // // myFish 变为 ["angel", "clown", "mandarin", "sturgeon"]

// unshift() 方法将一个或多个元素添加到数组的开头,并返回新数组的长度。
// let a=[1,2,3];
// a.unshift(4,5);
// console.log(a);// [4, 5, 1, 2, 3]

</script>
</head>
<body>

</body>
</html>

es6 Array数组方法的更多相关文章

  1. JavaScript Array 数组方法汇总

    JavaScript Array 数组方法汇总 1. arr.push() 从后面添加元素,返回值为添加完后的数组的长度 var arr = [1,2,3,4,5] console.log(arr.p ...

  2. ES6的数组方法之Array.from

    首先说说什么是数组:数组在类型划分上归为Object,属于比较特殊的对象,数组的索引值类似于对象的key值. 数组的几个注意点: 1.数组的长度是可读属性,不可更改,数组的长度根据索引最大值. 2.数 ...

  3. JavaScript Array数组方法详解

    Array类型是ECMAScript中最常用的引用类型.ECMAScript中的数据与其它大多数语言中的数组有着相当大的区别.虽然ECMAScript中的数据与其它语言中的数组一样都是数据的有序列表, ...

  4. Javascritp Array数组方法总结

    合并数组 - concat() 用法一 (合并两个数组) var hege = ["Cecilie", "Lone"]; var stale = [" ...

  5. Array数组方法的总结

    添加元素: 1. push(arg1,arg2,arg3....)  向数组的尾部添加元素,返回值是数组的长度. 2.unshift(arg1,arg2,arg3....) 向数组的头部添加元素,返回 ...

  6. 使用ES6新数组方法(象C# Lambda表达式一样写查询语句)

    let people = [ {id: 1, name: "a", age: 12}, {id: 2, name: "b", age: 13}, {id: 3, ...

  7. es6之数组方法

    //兼容插件 babel-polyfill values()等存在兼容问题,需要加载babel-polyfill插件 .keys()  获取数组的key值 .values()  获取数组的value值 ...

  8. 用ES5实现ES6的数组方法map

    先举个常见的栗子: var arr = [1,2,3,4,6,7,8,9,12,3,25,63,100] var arr2 = arr.map(item => item += 1) consol ...

  9. js Array 数组方法扩展

    //去重复   Array.prototype.unique = function()  {     this.sort();     var re=[this[0]];     for(var i ...

随机推荐

  1. ARM基础

    ARM汇编:(APCS过程调用标准) 汇编:用助记符(如$ # .)代替操作码,用地址符号或标签代替地址码的编程语言 特点: 优点:可以直接访问硬件,目标代码简短,执行速度快(CPU启动时需要直接操作 ...

  2. https连接器

    非对称性加密:A生成一份公私钥,将公钥交给需要进行数据传输的B,B发送数据时先用公钥对数据进行加密,然后发送给A,再由A使用私钥进行解密. 但存在漏洞即B如何确认公钥是由A提供的.因此需要一个第三方机 ...

  3. Java基础学习-注释的概述和分类

    /*     注释:用于解释说明程序的文字          分类:             单行://             多行:/**/       作用:解释说明程序,提高程序的阅读性 */ ...

  4. socket实现文件传输

    server:===========================================import socketimport structimport jsonsk = socket.s ...

  5. JS函数、变量作用域

    函数参数 函数的()中指定一个或多个形参(形式参数),多个形参之间用,号隔开,声明形参相当于在函数内部声明了对应的变量,但不赋值.在调用时在()中指定实参  调用时解析器不会检查实参类型.数量,实参可 ...

  6. MVC _Ajax的使用【七】

    一.本篇主要写的是在MVC项目中一种ajax的使用方法 1.  首先在控制器中创建两个方法,showCreate()和AddUserInfo() using System; using System. ...

  7. stylus笔记(三)

    1.@import 导入 Stylus支持字面@import CSS, 也支持其他Stylus样式的动态导入. 任何.css扩展的文件名将作为字面量.例如: @import "reset.c ...

  8. Python 多进程进程池Queue进程通信

    from multiprocessing import Pool,Manager import time def hanshu(queue,a): n = 1 while n<50: # pri ...

  9. 如何在linux下开启FTP服务

    如何在linux下开启FTP服务 1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:   #which vsftpd   如果看到有vsftpd的目录说明服务器已经安装了ftp软件 2. ...

  10. LeetCode Best to buy and sell stock

    Best Time to Buy and Sell Stock 题目大意;给定数组a[..],求解max a[j]-a[i]    j>i 解决思路:将数组a的相邻值相减(右边减左边)变换成数组 ...