JavaScript Array 数组方法汇总
JavaScript Array 数组方法汇总
var arr = [1,2,3,4,5]
console.log(arr.push(5)) // 6
console.log(arr) // [1,2,3,4,5,5]
var arr = [1,2,3,4,5]
console.log(arr.unshift(2)) // 6
console.log(arr) //[2,1,2,3,4,5]
var arr = [1,2,3,4,5]
console.log(arr.shift()) // 1
console.log(arr) // [2,3,4,5]
4.arr.pop() 从后面删除元素,只能是一个,返回值是删除的元素
var arr = [1,2,3,4,5]
console.log(arr.pop()) // 5
console.log(arr) //[1,2,3,4]
var arr = [1,2,3,4,5]
console.log(arr.splice(2,2)) //[3,4]
console.log(arr) // [1,2,5]
var arr = [1,2,3,4,5]
console.log(arr.concat([1,2])) // [1,2,3,4,5,1,2]
console.log(arr) // [1,2,3,4,5]
var str = '123456'
console.log(str.split('')) // ["1", "2", "3", "4", "5", "6"]

var arr = [2,10,6,1,4,22,3]
console.log(arr.sort()) // [1, 10, 2, 22, 3, 4, 6]
var arr1 = arr.sort((a, b) =>a - b)
console.log(arr1) // [1, 2, 3, 4, 6, 10, 22]
var arr2 = arr.sort((a, b) =>b-a)
console.log(arr2) // [22, 10, 6, 4, 3, 2, 1]

var arr = [1,2,3,4,5]
console.log(arr.reverse()) // [5,4,3,2,1]
console.log(arr) // [5,4,3,2,1]
let arr = [1,2,3,4,5]
console.log(arr.slice(1,3)) // [2,3]
console.log(arr) // [1,2,3,4,5]
11.arr.lastIndexOf() 和arr.indexOf()的功能一样,不同的是从后往前查找
var arr = [1,2,3,4,5,2]
var arr1 = arr.lastIndexOf(2)
console.log(arr1) // 5
let arr2 = arr.lastIndexOf(9)
console.log(arr2) // -1
12.arr.join() 方法用于把数组中的所有元素放入一个字符串
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr.join())
13.arr.toSource() 方法表示对象的源代码
function employee(name,job,born)
{
this.name=name;
this.job=job;
this.born=born;
}
var bill=new employee("Bill Gates","Engineer",1985);
document.write(bill.toSource());
14.arr.toString() 方法可把数组转换为字符串,并返回结果
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr.toString())
15.arr.toLocaleString()把数组转换为本地字符串
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr.toLocaleString())
16.arr.valueOf() 方法返回 Array 对象的原始值。。
valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中
ES5新增
var arr = [1,2,3,4,5,2]
var arr1 = arr.indexOf(2)
console.log(arr1) // 1
var arr2 = arr.indexOf(9)
console.log(arr2) // -1

var arr = [1,2,3,4,5]
arr.forEach( (value,index,array)=>{
console.log(`value:${value} index:${index} array:${array}`)
})
// value:1 index:0 array:1,2,3,4,5
// value:2 index:1 array:1,2,3,4,5
// value:3 index:2 array:1,2,3,4,5
// value:4 index:3 array:1,2,3,4,5
// value:5 index:4 array:1,2,3,4,5 var arr = [1,2,3,4,5]
arr.forEach( (value,index,array)=>{
value = value * 2
console.log(`value:${value} index:${index} array:${array}`)
})
console.log(arr)
// value:2 index:0 array:1,2,3,4,5
// value:4 index:1 array:1,2,3,4,5
// value:6 index:2 array:1,2,3,4,5
// value:8 index:3 array:1,2,3,4,5
// value:10 index:4 array:1,2,3,4,5
// [1, 2, 3, 4, 5]


var arr = [1,2,3,4,5]
arr.map( (value,index,array)=>{
value = value * 2
console.log(`value:${value} index:${index} array:${array}`)
})
console.log(arr)

ps: arr.forEach()和arr.map()的区别
1. arr.forEach()是和for循环一样,是代替for。arr.map()是修改数组其中的数据,并返回新的数据。
2. arr.forEach() 没有return arr.map() 有return
var arr = [1,2,3,4,5]
var arr1 = arr.filter( (i, v) => i < 3)
console.log(arr1) // [1, 2]
var arr = [1,2,3,4,5]
var arr1 = arr.every( (i, v) => i < 3)
console.log(arr1) // false
var arr2 = arr.every( (i, v) => i < 10)
console.log(arr2) // true
var arr = [1,2,3,4,5]
var arr1 = arr.some( (i, v) => i < 3)
console.log(arr1) // true
var arr2 = arr.some( (i, v) => i > 10)
console.log(arr2) // false
var arr = [0,1,2,3,4]
var arr1 = arr.reduce((preValue, curValue) =>
preValue + curValue
)
console.log(arr1) // 10
var arr2 = arr.reduce((preValue,curValue)=>preValue + curValue,5)
console.log(arr2) // 15
var arr = [0,1,2,3,4]
var arr1 = arr.reduceRight((preValue, curValue) =>
preValue + curValue
)
console.log(arr1) // 10

var arr2 = arr.reduceRight((preValue,curValue)=>preValue + curValue,5)
console.log(arr2) // 15
ES6新增数组
var str = '12345'
console.log(Array.from(str)) // ["1", "2", "3", "4", "5"]
vsr obj = {0:'a',1:'b',length:2}
console.log(Array.from(obj)) // ["a", "b"]
var str = '11'
console.log(Array.of(str)) // ['11']
console.log(new Array('11')) // ['11]
console.log(new Array(2)) //[empty × 2] 是个空数组
console.log(Array.of(2)) // [2]

var arr = [1,2,3,4,5,6,7]
var arr1 = arr.copyWithin(1)
console.log(arr1) // [1, 1, 2, 3, 4, 5, 6]
var arr2 = arr.copyWithin(1,2)
console.log(arr2) // [1, 3, 4, 5, 6, 7, 7]
var arr3 = arr.copyWithin(1,2,4)
console.log(arr3) // [1, 3, 4, 4, 5, 6, 7]

var arr = [1,2,3,4,5,2,4]
var arr1 = arr.find((value, index, array) =>value > 2)
console.log(arr1) // 3
var arr = [1,2,3,4,5]
var arr1 = arr.findIndex((value, index, array) => value > 3)
console.log(arr1) // 3

var arr = [1,2,3,4,5]
var arr1 = arr.includes(2)
console.log(arr1) // ture
var arr2 = arr.includes(9)
console.log(arr2) // false
var arr3 = [1,2,3,NaN].includes(NaN)
console.log(arr3) // true

var arr = [1,2,3,4]
var arr2 = arr.keys()
for (var key of arr2) {
console.log(key); // 0,1,2,3
}
var arr = [1,2,3,4]
var arr1 = arr.values()
for (var val of arr1) {
console.log(val); // 1,2,3,4
}
var arr = [1,2,3,4]
var arr1 = arr.entries()
for (var e of arr1) {
console.log(e); // [0,1] [1,2] [2,3] [3,4]
}
JavaScript Array 数组方法汇总的更多相关文章
- JavaScript Array数组方法详解
Array类型是ECMAScript中最常用的引用类型.ECMAScript中的数据与其它大多数语言中的数组有着相当大的区别.虽然ECMAScript中的数据与其它语言中的数组一样都是数据的有序列表, ...
- JavaScript之数组方法整理
Array概述 除了Object类型,最常用的类型: 实质:有序的数据列表, 特性:可以动态的调整数组的大小 创建数组的两种方式 构造函数创建方式 var arr = ...
- JavaScript Array filter() 方法
JavaScript Array filter() 方法 var ages = [32, 33, 16, 40]; function checkAdult(age) { return age > ...
- javascript Array数组详解 各种方法
1.数组的声明方法(1): arrayObj = new Array(); //创建一个数组.复制代码 代码如下: var arr1 = new Array(); (2):arrayObj = new ...
- JavaScript的数组方法(array)
数组方法: 1. concat() 合并数组 2. join() 将数组的元素拼接成字符串,并指定分隔符 3. push() 往数组末尾添加一个元素,并返回新的数组的长度 4. reverse( ...
- JavaScript -Array.form方法
Array.from方法可以把一个类数组或者课遍历对象转换为一个正真的数组 语法 Array.from(arrayLike[, mapFn[, thisArg]]) 参数 arrayLike 想要转换 ...
- js数组方法汇总
下面主要汇总一下数组的方法 数组方法: 1.检测是否为数组的方法:Array.isArrray(); var arr=[1,2,3,4,5]; var str='string'; console.lo ...
- JavaScript常用数组方法
JavaScript数组方法有以下这些: forEach() 方法对数组的每一个元素执行一次提供的函数. map() 方法创建一个新数组,其结果是该数组都执行一次函数,原函数保持不变. filter( ...
- javascript Array(数组)
迁移时间:2017年5月25日08:05:33 UpdateTime--2017年3月31日16:29:08 一.数组(Array) (一)用法 //js声明数组的两大类方式 // 第一类(通常使 ...
随机推荐
- 1.4.1python下载网页(每天一更)
# -*- coding: utf-8 -*- ''' Created on 2019年4月27日 @author: lenovo ''' # import urllib3 # def downloa ...
- 虚拟机ip地址从ipv6改为ipv4相关问题
有一次打开虚拟机时,Xshell连接不上虚拟机,就很奇怪,然后查看虚拟机的ip地址,发现显示为ipv6格式,然后总结了两种情况如下: 第一种情况: onboot为no时显示ipv6地址, 改为yes即 ...
- 20190803 NOIP模拟测试12「斐波那契(fibonacci)· 数颜色 · 分组 」
164分 rank11/64 这次考的不算太差,但是并没有多大的可能性反超(只比一小部分人高十几分而已),时间分配还是不均,T2两个半小时,T1半个小时,T3-额十几分钟吧 然额付出总是与回报成反比的 ...
- 学习vue感触
大学还没毕业,想着先找工作,感觉计算机专业在老家做没有太大的发展,于是就在大学所在城市找了份工作.来到公司的第一天,带我的师傅让我学习vue.之前完全没有接触过框架,而且专业知识比较薄弱,前几天一直处 ...
- Java性能权威指南读书笔记--之二
新生代填满时,垃圾收集器会暂停所有的应用线程,回收新生代空间.这种操作被称为Minor GC. 老年代被填满时,垃圾收集器会暂停所有应用线程,对其进行回收,接着对堆空间进行整理.这个过程被称为Full ...
- oracle-11g2下载安装笔记
一.下载链接地址 http://download.oracle.com/otn/nt/oracle11g/112010/win64_11gR2_database_1of2.zip http://dow ...
- Linux下安装jupyter
又是美好的一天 开开心心写代码 1. 安装ipython, jupyter pip install ipython pip install jupyter 2. 生成配置文件[root@50e ...
- Java——擦除
直接代码分析一波: import java.util.*; public class Ex12 { public static void main(String[] args) { Class c1 ...
- 动态SQL查询
if+where: 用于查询操作,where标签可以智能判断是否添加and.or.where关键词 示例: <select id="findByParam" resultTy ...
- 100天搞定机器学习|Day16 通过内核技巧实现SVM
前情回顾 机器学习100天|Day1数据预处理100天搞定机器学习|Day2简单线性回归分析100天搞定机器学习|Day3多元线性回归100天搞定机器学习|Day4-6 逻辑回归100天搞定机器学习| ...