JavaScript 数组对象常用属性
concat()
用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。
var a = ["aa","ccc"];
var b = ["vv","mm"];
var c = ["123"];
var d = a.contac(b,c); ==> ["aa","ccc","vv","mm","123"]
every()
用于检测数组所有元素是否都符合指定条件(通过函数提供)。
every() 方法使用指定函数检测数组中的所有元素:
- 如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
- 如果所有元素都满足条件,则返回 true。
注意: every() 不会对空数组进行检测。
注意: every() 不会改变原始数组。
var ary = [3,4,5,6,7]
var result = ary.every(function(item){
return item>5;
}) ==> false
filter()
创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
var ary = [2,3,5,6,7];
var result = ary.filter(function(item){
return item>3;
}); ==> [5,6,7]
forEach()
用于调用数组的每个元素,并将元素传递给回调函数。
var ary = [3,4,5,6,7]
var result = ary.forEach(function(item,index){
console.log(item,index)
});
includes()
用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
arr.includes(searchElement)
arr.includes(searchElement, fromIndex)
// searchElement 要查找的元素
// fromIndex 从该索引处开始查找 searchElement。如果fromIndex 大于等于数组长度 ,则返回 false ,该数组不会被搜索
如果为负值,则按升序从 array.length + fromIndex 的索引开始搜索。默认为 0。如果计算出的索引小于 0,则整个数组都会被搜索。
var arr = ['a', 'b', 'c'];
arr.includes('a'); // true
arr.includes('a', -100); // true
indexOf()
可返回数组中某个指定的元素位置。如果在数组中没找到指定元素则返回 -1。
var num = [1,2,3,4,'Apple'];
var a = num.indexOf("Apple"); //
lastIndexOf()
可返回一个指定的元素在数组中最后出现的位置,在一个数组中的指定位置从后向前搜索。如果要检索的元素没有出现,则该方法返回 -1。
var num = [1,2,3,4,'Apple'];
var a = num.lastIndexOf("Apple"); //
isArray()
用于判断一个对象是否为数组。如果对象是数组返回 true,否则返回 false。
var item = [];
Array.isArray(item); //true
join()
用于把数组中的所有元素转换一个字符串。元素是通过指定的分隔符进行分隔的。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var energy = fruits.join(); //Banana,Orange,Apple,Mango
var energy = fruits.join("|"); //Banana|Orange|Apple|Mango
map()
返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map() 方法按照原始数组元素顺序依次处理元素。
注意: map() 不会对空数组进行检测。
注意: map() 不会改变原始数组。
var ary= [4,9,16,25];
var result = ary.map(Math.sqrt); //求平方根:result ==> 2,3,4,5
pop()
用于删除数组的最后一个元素并返回删除的元素。注意:此方法改变原数组长度。
var ary = [2,4,5,6];
var del = ary.pop(); //del ==> 6
// ary ==> 2,4,5
push()
可向数组的末尾添加一个或多个元素,并返回新的长度。注意:此方法改变原数组长度。
var ary = ['aa','bb','cc'];
var result = ary.push('ss'); //result ==>
//ary ==> ['aa','bb','cc','ss']
shift()
用于删除并返回数组的第一个元素。注意:此方法改变原数组长度。
var ary = [2,4,5,6];
var del = ary.shift(); //del ==> 2
// ary ==> 4,5,6
unshift()
可向数组的开头添加一个或更多元素,并返回新的长度。注意:此方法改变原数组长度。
var ary = ['aa','bb','cc'];
var result = ary.unshift('ss'); //result ==> 4
//ary ==> ['ss','aa','bb','cc']
reduce()
接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
这个函数必须接收两个参数,reduce()
把结果继续和序列的下一个元素做累积计算。
注意: reduce() 对于空数组是不会执行回调函数的。
var arr = [1, 3, 5, 7, 9];
arr.reduce(function (x, y) {
return x + y;
}); //
reduceRight() 方法的功能和 reduce() 功能是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数组项做累加。
reverse()
用于颠倒数组中元素的顺序。
var fruits = [1, 2, 3, 4];
fruits.reverse(); // [4,3,2,1]
slice()
可从已有的数组中返回选定的元素。
slice()方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。
注意: slice() 方法不会改变原始数组。
返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。
array.slice(start, end)
//start 可选。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。
//end 可选。规定从何处结束选取。
//该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
//如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
var citrus = fruits.slice(1,3); // ["Orange", "Lemon"]
some()
用于检测数组中的元素是否满足指定条件(函数提供)。
some() 方法会依次执行数组的每个元素:
- 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
- 如果没有满足条件的元素,则返回false。
var arr = [1, 3, 5, 7, 9];
arr.some(function (item) {
return item>4;
}); // true
sort()
用于对数组的元素进行排序。返回新的数组
排序顺序可以是字母或数字,并按升序或降序。默认排序顺序为按字母升序。
注意:当数字是按字母顺序排列时"40"将排在"5"前面。
使用数字排序,你必须通过一个函数作为参数来调用。
函数指定数字是按照升序还是降序排列。
注意: 这种方法会改变原始数组!
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.sort(); // Apple,Banana,Mango,Orange //升序
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return a-b}); //1,5,10,25,40,100 //降序
var points = [40,100,1,5,25,10];
points.sort(function(a,b){return b-a}); // 100,40,25,10,5,1
splice()
用于插入、删除或替换数组的元素。
注意:这种方法会改变原始数组!
array.splice(index,howmany,item1,.....,itemX)
//index 必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
//howmany 必需。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
//item1, ..., itemX 可选。要添加到数组的新元素 //如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
//移除数组的第三个元素,并在数组第三个位置添加新元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,1,"Lemon","Kiwi"); //["Banana", "Orange", "Lemon","Kiwi","Mango"] //从第三个位置开始删除数组后的两个元素:
var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.splice(2,2); //["Banana", "Orange"]
toString()
可把数组转换为字符串,并返回结果。
注意: 数组中的元素之间用逗号分隔。
array.toString()
valueOf()
返回 Array 对象的原始值。
该原始值由 Array 对象派生的所有对象继承。
valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。
注意: valueOf() 方法不会改变原数组。
//valueOf() 是数组对象的默认方法。
// fruits.valueOf()与 fruits返回值一样。
var fruits = ["Banana", "Orange", "Apple", "Mango"];
var v=fruits.valueOf();
JavaScript 数组对象常用属性的更多相关文章
- Javascript 数组对象常用的API
常用的JS数组对象API ES5及以前的Api ECMAScript5为数组定义了5个迭代方法,每个方法接收两个参数, 一个是每项运行的函数,一个是运行该函数的作用域对象(可选项),传入这些方法的函数 ...
- JavaScript中对象的属性
在JavaScript中,属性决定了一个对象的状态,本文详细的研究了它们是如何工作的. 属性类型 JavaScript中有三种不同类型的属性:命名数据属性(named data properties) ...
- JavaScript 数组方法和属性
一. 数组对象的操作方法 1. 数组的创建 2.prototype属性 返回对象原型的引用,prototype属性时object共有的. objectName.prototype,其中objectNa ...
- JavaScript中Number常用属性和方法
title: JavaScript中Number常用属性和方法 toc: false date: 2018-10-13 12:31:42 Number.MAX_VALUE--1.79769313486 ...
- javascript数组对象排序
javascript数组对象排序 JavaScript数组内置排序函数 javascript内置的sort函数是多种排序算法的集合 JavaScript实现多维数组.对象数组排序,其实用的就是原生的s ...
- JavaScript数组对象常用方法
JavaScript数组对象常用方法 方法 形式 返回值 是否改变原数组 描述 concat -items: ConcatArray[] 追加之后的数组 否 连接两个或更多的数组,并返回结果.注意 c ...
- JavaScript BOM-11-BOM的核心-window对象; window对象的控制,弹出窗口方法; 超时调用; 间歇调用; location对象常用属性; 位置操作--location.reaplace,location.reload(); BOM中的history对象; Screen对象及其常用属性; Navigator对象;
JavaScript BOM 学习目标 1.掌握什么是BOM 2.掌握BOM的核心-window对象 3.掌握window对象的控制.弹出窗口方法 什么是bom BOM(browser object ...
- JavaScript数组对象详情
Array 数组概述 Array 类型是 ECMAScript 最常用的类型.javaScript 中的 Array 类型和其他语言中的数组有着很大的区别. 虽然数组都是有序排列,但 javaScri ...
- 了解JavaScript 数组对象及其方法
数组在我目前学习过的编程语言中都可以见到, 形形色色的方法也数不胜数, 不过功能都一样, 最多也就是方法名稍稍有所不同, 老外也没个准啊, 如果英语比较好的同学对于学习方法(method)来说是很快的 ...
随机推荐
- mysql5.7解压版版安装步骤详情
mysql有安装版和解压版之分: 安装版:以msi结尾的,这种版本优点是安装便捷,全是傻瓜式的下一步:缺点是会不自觉的安装一些我们根本不需要的组件. 解压版:以zip或者其他压缩格式结尾的,这种版本虽 ...
- 函数新特性、内联函数、const详解
一.函数回顾与后置返回类型 函数定义中,形参如果在函数体内用不到的话,则可以不给形参变量名字,只给其类型. 函数声明时,可以只有形参类型,没有形参名 把函数返回类型放到函数名字之前,这种写法,叫前置返 ...
- Orleans MultiClient 多个Silo复合客户端
目录 介绍 使用 简单例子 配置 注入到 DI 容器 添加多个 Client 全局 Orleans 服务配置 介绍 Orleans.MultiClient 是一个 Orleans 复合客户端,只需要简 ...
- python为何需要虚拟环境--Python虚拟环境的安装和配置-virtualenv
一 虚拟环境 virtual environment 它是一个虚拟化,从电脑独立开辟出来的环境.通俗的来讲,虚拟环境就是借助虚拟机docker来把一部分内容独立出来,我们把这部分独立出来的东西称作“容 ...
- Linux 内存监控
1.按照内存使用方式排序 top 之后使用 shift + m 那么top按照内存使用从大到小进行排列,使用 shift + P 表示按照CPU进行排序. bigfish 1118m 438m 30m ...
- 提交app时候遇到IDFA警告
1.最近提交app时候遇到如下问题,解决方案: Everything has come to its usual state now. Simply upload your binary as you ...
- python高级(六)——用一等函数实现设计模式
本文主要内容 经典的“策略”模式 python高级——目录 文中代码均放在github上:https://github.com/ampeeg/cnblogs/tree/master/python高级 ...
- ORM中的一对一和多对多
ORM中的一对一和多对多 Django ORM ORM 一对一 什么时候用一对一? 当 一张表的某一些字段查询的比较频繁,另外一些字段查询的不是特别频繁 把不怎么常用的字段 单独拿出来做成一张表 然 ...
- 使用webbench工具测试网站访问压力
介绍 Webbench是一个在Linux下使用的网站压测工具.它使用fork()模拟多个客户端 同时访问我们设定的URL,测试网站在压力下工作的性能, 最多可以模拟3万个并发连接去测试网站的负载能力. ...
- c#中的引用类型和值类型
一,c#中的值类型和引用类型 众所周知在c#中有两种基本类型,它们分别是值类型和引用类型:而每种类型都可以细分为如下类型: 什么是值类型和引用类型 什么是值类型: 进一步研究文档,你会发现所有的结构都 ...