javascript常见的数组方法
1:Array对象用于在单个变量中存储多个值
typeof(arrArr) 'object'
var arr1 = [];//创建一个空数组
eg:数组是个引用类型
var a = [1,2,3];
var b = [1,2,3];
console.log(a == b);
//false
构造函数创建
var arr1 = new Array();//创建空数组
var arr2 = new Array(10);//创建一个长度为10的数组
new Array(-1); //Uncaught RangeError: Invalid array length(…)
new Array(undefined) //[undefined]
var arr3 = new Array(5,4,3,2,1);//创建数组并初始化
es6 Array.of 创建数组
Array.of()
//[]
Array.of(undefined)
//[undefined]
Array.of(1)
//[1]
Array.of(3)
//[3]
Array.of(1, 2)
//[1, 2]
Array.of(-1)
//[-1]
2:length 属性
var arrArr = [1,2,3,4,5];
console.log(arrArr.length); //5
数组的最后一项是length-1
console.log(arrArr[arrArr.length-1]) //5
3:数组的遍历
var arrArr = [1,2,3,4,5];
for (var i = 0; i < arrArr.length; i++) {
//arrArr[i]....
};
4:数组中常见的方法
(1)删除数组的最后一项,返回的是删除的值
pop()
eg:
var arr = ["1","2"];
var arrv=arr.pop();
console.log(arr);
console.log(arr2);
//["1"]
//2
(2) 向数组的最后添加值,返回的是新数组的长度
push()
eg:
var arr = ["1","2"];
var arrv=arr.push("3","4","5");
console.log(arr);
console.log(arrv);
//["1", "2", "3", "4", "5"]
//5
(3) 删除数组的第一项,返回的是删除的值
shift()
eg:
var arr = ["1","2"];
var arrv=arr.shift();
console.log(arr);
console.log(arrv);
//["2"]
//1
(4) 向数组的开头添加值,返回的是新数组的长度
unshift()
eg:
var arr = ["1","2"];
var arrv=arr.unshift("3","4","5");
console.log(arr);
console.log(arrv);
//["3", "4", "5", "1", "2"]
//5
(5)concat()
合并两个数组,原数组不变。concat是把arr1和arr2合并为一个新数组返回
eg:
var arr1 = ["1","2"];
var arr2 = ["3","4"];
var newarr=arr1.concat(arr2,["5","6"]);
console.log(arr1);
console.log(arr2);
console.log(newarr);
//["1", "2"]
//["3", "4"]
// ["1", "2", "3", "4", "5", "6"]
(6)slice英文意思是:切成片,切下,划分
slice()
arrayObject.slice(start,end)
从已有的数组中返回选定的元素,从下标为start的元素开始,若为负数,表示从最后开始,-1表示最后一项,
到下标为end之前的一项
eg:
var arr1 = ["1","2","3","4","5"];
var arr2 = arr1.slice(1,4);
console.log(arr1);
console.log(arr2);
//["1", "2", "3", "4", "5"]
//["2", "3", "4"]
(7)splice()
从数组中添加删除项,返回被删除的项目。
arrayObject.splice(index,howmany,item1,.....);
index规定的是添加删除项的位置,若为负数,表示从最后开始,-1表示最后一项
howmany表示的是要删除的项目的数量。为0表示的是不删除。只是添加
item1,.....向数组中添加的新项(可选)
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,4,"1");
console.log(arr);
console.log(newarr);
//["A", "B", "1", "G"]
//["C", "D", "E", "F"] 被删除的项
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,0,"1");
console.log(arr);
console.log(newarr);
//["A", "B", "1", "C", "D", "E", "F", "G"]
//[] 表示的是删除0项
eg:
var arr = ["A","B","C","D","E","F","G"];
var newarr=arr.splice(2,3); //只删除不添加
console.log(arr);
console.log(newarr);
//["A", "B", "F", "G"]
//["C", "D", "E"]
(8)reverse()
颠倒数组中元素的顺序(改变的是原数组)
arrayObject.reverse();
var arr = ["A","B","C","D","E","F","G"];
var arr1=arr.reverse();
console.log(arr);
console.log(arr1);
//["G", "F", "E", "D", "C", "B", "A"]
//["G", "F", "E", "D", "C", "B", "A"]
(9)sort()
对数组的元素进行排序(默认是按照字符集的格式进行排序)
sortby规定排序的顺序,必须是函数
arrayObject.sort(sortby);
var arr = [1,3,2,4,6,9];
arr.sort();
console.log(arr);
//[1, 2, 3, 4, 6, 9]
sortby规定排序的顺序,只能是个函数。两参数的差值小于0,则表示a必须出现在b前面,否则在b后面
若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
var arr = [2,5,4,23,2,45];
arr.sort(function(a,b){
if(a < b){
return -1; //a-b返回一个小于0.a在b的前面。a比b小。升序排列
}else if(a > b){
return 1; //a-b返回一个大于0.说明a比b大。升序排列。a在b的后面
}else if(a == b){
return 0; //a-b返回一个等于0.说明a等于b。
}
});
console.log(arr);
//[2, 2, 4, 5, 23, 45]
(10)join()
把数组中的所有元素放入一个字符串中
separator为分隔符
arrayObject.join(separator)
eg:
var arr = [1,2,3,4,5,6,7];
var str = arr.join(",");
console.log(str);
//1,2,3,4,5,6,7
javascript常见的数组方法的更多相关文章
- javascript常见操作数组的方法
在 JavaScript 中,判断一个变量的类型尝尝会用 typeof 运算符,在使用 typeof 运算符时采用引用类型存储值会出现一个问题,无论引用的是什么类型的对象,它都返回 "obj ...
- javascript里的几种常见的数组方法
Array()的几种方法 1.splice(2,3,4)删除数组中任意项(三个参数). 2.splice(1,3)删除从第一项开始的往后三项(两个参数).(splice可以结合pop(),unshif ...
- Javascript中遍历数组方法的性能对比
Javascript中常见的遍历数组的方法 1.for循环 for(var i = 0; i < arr.length; i++) { // do something. } 2.for循环的改进 ...
- javascript中常用数组方法详细讲解
javascript中数组常用方法总结 1.join()方法: Array.join()方法将数组中所以元素都转化为字符串链接在一起,返回最后生成的字符串.也可以指定可选的字符串在生成的字符串中来分隔 ...
- Javascript中的数组方法总结
1.concat():将两个或多个数组合并成一个数组 arrayObject.concat(arrayX,arrayX,......,arrayX),返回一个新的数据,arrayX可以是数值也可以是数 ...
- JavaScript字符串与数组方法整理
字符串(String)的方法: 代码后面的都是返回值 var str = "atusdgafsvg"; var str1 = "123456789"; var ...
- JavaScript 基础(六) 数组方法 闭包
在一个对象中绑定函数,称为这个对象的方法.在JavaScript 中,对象的定义是这样的: var guagua = { name:'瓜瓜', birth:1990 }; 但是,如果我们给瓜瓜绑定一个 ...
- JS基本功 | JavaScript专题之数组 - 方法总结
Array.map() 1. map() 遍历数组 语法: let new_array = arr.map(function callback(currentValue, index, array ...
- javascript之操作数组方法
掌握如何操作数组,会让你的开发变得更加高效 1.栈和队列方法(以下四个方法都改变原数组) arr.push() //接受任意类型的参数,逐个添加到数组的末尾,并返回数组的长度 改变原数组 arr.po ...
随机推荐
- [bzoj1251]序列终结者——splay
题目大意 网上有许多题,就是给定一个序列,要你支持几种操作:A.B.C.D.一看另一道题,又是一个序列 要支持几种操作:D.C.B.A.尤其是我们这里的某人,出模拟试题,居然还出了一道这样的,真是没技 ...
- EffectiveJava读书笔记
less, but is more. 创建和销毁对象 避免创建不必要对象 消除过期的对象引用 使可变性最小 泛型 用标记接口定义类型 检查参数有效性 返回零长度的数组或集合,而不是null 需要精确答 ...
- yum软件包安装
使用yum安装软件 配置yum配置文件 cd /etc/yum.repos.d/ vim rhel7.repo [rhel7-source] name=rhel7-source baseurl=fil ...
- Method and apparatus for providing total and partial store ordering for a memory in multi-processor system
An improved memory model and implementation is disclosed. The memory model includes a Total Store Or ...
- linux tomcat 乱码
使用vi编辑器编辑长文件时,常常是头昏眼花,也找不到需要更改的内容. 这时,使用查找功能尤为重要. 方法如下: 1.命令模式下输入“/字符串”,例如“/Section 3”. 2.如果查找下一个,按“ ...
- [ MongoDB ] 分片集群及测试
分片 在Mongodb里面存在另一种集群,就是分片技术,可以满足MongoDB数据量大量增长的需求. 当MongoDB存储海量的数据时,一台机器可能不足以存储数据,也可能不足以提供可接受的读写吞吐量. ...
- MYSQL通过索引优化数据库的查询
#转载请联系 索引是什么? 索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的位置信息. 更通俗的说,数据库索引好比是一本书前面的目录,能加快数据 ...
- solr in action
Miscellaneous settings: Lucene version solr使用luceneMatchVersion来决定当前索引正在使用的lucene版本及是否禁用新版本的特性.
- MYECLIPSE中快速解决项目的错误的方法
Use the IDE's help as follows:- Right mouse click on the error in the 'Problems' view- Select the 'Q ...
- HDU 2567 寻梦(字符串,插入)
#include<iostream> #include<stdio.h> #include<string.h> #include<cmath> usin ...