Array数组小方法总结
如果各位在阅读的时候,有任何问题,都可以留言:
// push()方法会向数据末尾添加数据,并返回添加数据后的数组的长度
var arr=[1,2,3]
console.log(arr.push(4),arr)//4 [ 1, 2, 3, 4 ]
//unshift()方法会向数据起始位置添加数据,并返回添加数据后的数组的长度
var un=[1,2,3]
console.log(un.unshift(4),un)//4 [ 4, 1, 2, 3 ]
// pop()方法删除数组的最后一个元素,并返回删除的元素
var poparr=[1,2,23,454]
console.log(poparr.pop(),poparr)//454 [ 1, 2, 23 ]
// shift()方法删除数组的第一个元素,并返回删除的元素
var sh=[23,434,54]
console.log(sh.shift(),sh)//23 [ 434, 54 ]
// slice()方法截取数组,截取的值不会在数组消失
//注意下标从0开始,截取的极值不包括开始(2),包括结尾(4)
var lice=[1,2,3,4,5,6]
console.log(lice.slice(2,4))//[ 3, 4 ]
// splice()方法截取数组,截取的值会在原数组消失
var plice=[1,2,3,4,5,6]
console.log(plice.splice(2,4),plice)//[ 3, 4, 5, 6 ] [ 1, 2 ]
//reduce()方法对数组的元素进行运算
var red=[1,23,45]
console.log(red.reduce((a,b)=>a+b))//69
console.log(red.reduce((a,b)=>a*b))//1035
// reverse()方法会颠倒数组元素的顺序
var rev=[1,3,4]
console.log(rev.reverse())//[4,3,1]
//concat()方法合并两个数组
var con1=[1,3,5,6]
var con2=[23,535,65]
console.log(con1.concat(con2))
//map()方法,依次向函数中传入数组的数据,并把每次的返回结果组成一个新的数组,
//elem当前的数据,index,当前数据的下标,arr,数组本身。
var arr=[1, 2, 3].map(function(elem, index, arr) {
console.log(elem,index,arr)
//1 0 [ 1, 2, 3 ]
//2 1 [ 1, 2, 3 ]
//3 2 [ 1, 2, 3 ]
return elem * index;
});
console.log(arr)//[ 0, 2, 6 ]
//lastIndexOf()方法,已知一个值,拿到在数组对应的下标
var arr=[23,24,2,53]
console.log(arr.lastIndexOf(2))
// sort()默认情况下sort方法是按ascii字母顺序排序的
var sor=[2,4,6,3,1,3]
console.log(sor.sort())//[ 1, 2, 3, 3, 4, 6 ]
var daoxu=[32,4,76,54,7]
console.log(daoxu.sort())//[ 76, 7, 54, 4, 32 ]
//封装数组排序函数
//包装有参函数,a,b;a-b正序,a+b倒序
function sortby(a,b){
return a+b;
}
var a=[1,4,5,3,2,8]
console.log(a.sort(sortby))//[ 8, 2, 3, 5, 4, 1 ]
// 数组的indexOf
var index=[1,24,56,7,8]
console.log(index.indexOf(1))//0 所要检查元素在数组的位置
console.log(index.indexOf(56))//2
console.log(index.indexOf(10))//-1 所检查的元素如果不在数组范围里,则返回-1
// join()方法,把数组的所有元素放入一个字符串,,也可以以自定义字符分割
var arr=[123,4,546]
console.log(typeof(arr.join()),arr.join())//string//123,4,546
console.log(arr.join("|"))//123|4|546
//toString()把数组转换为字符串,并返回结果。
var toStr=[12,334,543,43]
console.log(toStr.toString(),typeof(toStr.toString()))
// toLocaleString()把数组转换为本地数组,并返回结果。
var tolo=[2,43,54,43,3]
console.log(typeof(tolo.toLocaleString()))
// valueOf()返回数组的原始值
var val=[123,23,3,5]
console.log(val.valueOf(3))
// instanceof 用于判断一个变量是否某个对象的实例,
// obj(检测的对象) instanceof cons(构造函数)
// instanceof 运算符用来检测 cons.prototype 是否存在于参数 obj 的原型链上。
var ins=[1,23,5,4]
console.log(ins instanceof Object)//true //Array也是Object的子类
function c(){}
function d(){}
var o=new c()
console.log(o instanceof c)//true
console.log(o instanceof d)//false
// isArray()方法用于判断一个对象是否为数组
console.log(Array.isArray([]))//true
console.log(Array.isArray([1]))//true
console.log(Array.isArray(true))//fasle
Array数组小方法总结的更多相关文章
- Array数组的方法总结
1.检测数组 自从ECMAScript3作出规定后,就出现了确定某个对象是不是数组的经典问题.对于一个网页,或者一个全局作用域而言,使用instanceof操作符就能得到满意结果. if (value ...
- js中Array数组基本方法
总结:push() 添加元素到数组未尾, 返回数组长度 unshift() 添加元素到数组头部, 返回数组长度 pop() 删除数组未尾元素, 返回删除元素 shift() 删除数组头部元素, 返回删 ...
- Array(数组)--map方法
关于Array.prototype.map() MDN 给的定义是: 在作用数组元素的每一项上调用一个方法(callback),返回一个新数组: 使用格式:arr.map(callback[,this ...
- JavaScript中Array数组的方法
查找: indexOf.lastIndexOf 迭代:every.filter.forEach.map.somereduce.reduceRight 用法: /* 1 查找方法: * arr.inde ...
- Array数组对象方法
Array 对象方法 方法 描述 concat() 连接两个或更多的数组,并返回结果. copyWithin() 从数组的指定位置拷贝元素到数组的另一个指定位置中. entries() 返回数组的可迭 ...
- js清空array数组的方法
方式1,splice Js代码 ,,,}; ary.length = ; Java中会报错,编译通不过. 而JS中则可以,且将数组清空了,如 Js代码 var ary = [1,2,3,4]; ...
- for 循环 和 Array 数组对象
博客地址:https://ainyi.com/12 for 循环 和 Array 数组对象方法 for for-in for-of forEach效率比较 - 四种循环,遍历长度为 1000000 的 ...
- JS中Array数组的三大属性用法
原文:JS中Array数组的三大属性用法 Array数组主要有3大属性,它们分别是length属性.prototype属性和constructor属性. JS操作Array数组的方法及属性 本文总结了 ...
- JavaScript的json和Array及Array数组的使用方法
1.关于json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集.也可以称为数据集和数组类似,能够存数据! //Ar ...
随机推荐
- 关于childNodes的删除
在使用childNodes时,发现需要删除的元素多于1时,会出现无法全部删除的情况.谷歌以后发现,该属性返回的子节点集合是实时更新的,也就是说,在for循环中,当删除第一个子节点之后,第二次删除的是原 ...
- 开发工具IntelliJ IDEA的安装步骤及首次启动和创建项目
开发工具IDEA概述 DEA是一个专门针对Java的集成开发工具(IDE),由Java语言编写.所以,需要有JRE运行环境并配置好环境变量.它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公 ...
- 使用Github生成燃尽图
经过一晚上折腾,终于算是把linux上成功生成了我们团队项目的燃尽图,效果还是不错,在过程中又发现了另一种生成燃尽图的方式,也是基于一个开源项目. 1.准备: 首先你的项目一定要有milestone. ...
- Kubernetes — 重新认识Docker容器
这一次,我要用+Docker+部署一个用+Python+编写的+Web+应用.这个应用的代码部分(app.py)非常简单: from flask import Flask import socket ...
- js中“==”与“===”区别
直接上代码 if(2==='2'){ console.log(true) }else{ console.log(false) } //打印结果 false if(2=='2'){ console.lo ...
- JS/JQuery 设置input等标签设置和取消只读属性
<input type="text" id="HouseName" value="" align="left"/& ...
- mysql int(19) float(7,2) decimal(7,2)对比
nt(19):指定数字的显示宽度为19,与实际存储数值的范围无关 float(7,2): 7是显示宽度指示器,指定显示的浮点数为7位数字(与float实际存储值的范围无关),2代表小数点后只有两位小 ...
- DataTable转list时 可空类型的转换问题
public class UtilHelper { public static IList<T> ConvertTo<T>(DataTable table) { if (tab ...
- windows 8.1 cmd命名提示符全屏
在 C:\Users\wy\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\System Tools 目录下,右键命令提示符-属性中修改:
- nuxt.js实战之window和document对象的使用
在开发nuxt项目的时候,我们难免会使用到document来获取dom元素.如果直接在文件中使用就会报错.这是因为document是浏览器端的东西服务端并没有. 解决方法: 我们只需要在使用的地方通过 ...