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 ...
随机推荐
- Centos查看tomcat状态及操作
启动:一般是执行sh tomcat/bin/startup.sh 查看:执行ps -ef |grep tomcat 输出如下 www 5144 ...等等.Bootstrap start 说明tomc ...
- nginx编译文件配置(原)
1.在根目录的opt下创建文件夹software并wget一个nginx包进行解压,/opt/software/,解压后需要对软件包文件进行授权 2.cd到nginx目录输入id nginx 未安装插 ...
- 记录下mainfest.json 原生标题的按钮监听
首先在mainfest.json中 plus下添加以下代码 "launchwebview": {"titleNView": {"backgroundc ...
- Pyspark 使用 Spark Udf 的一些经验
起初开始写一些 udf 的时候感觉有一些奇怪,在 spark 的计算中,一般通过转换(Transformation) 在不触发计算(Action) 的情况下就行一些预处理.udf 就是这样一个好用的东 ...
- golang运算与循环等
一.golang运算符 1.算术运算符 + 相加- 相减* 相乘/ 相除% 求余++ 自增-- 自减 2.关系运算符 == 等于!= 不等于> 大于< 小于>= 大于等于<= ...
- c语言提高第二天
一.指针强化1.指针也是一种数据类型,指针变量也是一种变量,和int a本质是一样的 1)指针变量也是一种变量,也有空间,32位程序大小为4个字节 int *p = 0x1122; 2)*操作符,*相 ...
- CentOs7 最小安装版安装后配置和java环境的搭建
下面是contos7 最小化安装成功以后进行一些基础的配置和java环境的安装教程: 1 防火墙 : 关闭防火墙: systemctl stop firewalld.service . 关闭开机启 ...
- linux中去掉^M的方法
转:https://blog.csdn.net/sty945/article/details/80347901 (1)是用VI的命令: 在命令模式下运行命令 :%s/^M//g 回车 注意:手动输入该 ...
- 清北学堂part2
今天的内容分为两部分,能听懂的和听不懂的... 整一整当前阶段(oi)非常重要的知识点,扩展欧几里得, 其他的不是不重要,只是代码实现效果不很好 代码: #include<bits/stdc++ ...
- BZOJ5506 GXOI/GZOI2019旅行者(最短路)
本以为是个二进制分组傻逼题https://www.cnblogs.com/Gloid/p/9545753.html,实际上有神仙的一个log做法https://www.cnblogs.com/asul ...