介绍
本文是在学习JS所做的学习笔记,所有笔记内容请看:JS学习笔记
数组方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
// 创建一个数组
var arr=['swk','zbj','shc'];
1、push()方法
- 该方法可以向数组得末尾添加一个或多个元素,并返回数组得新的长度
- 可以将要添加得元素作为方法得参数传递
这样这些元素会自动传递到素组末尾
var result=arr.push('ss','fsf','ba');
console.log(result)// 返回数组新的长度
2、pop()方法:
-该方法可以删除数组得最后一个元素,并将被删除得元素作为返回值
var result= arr.pop()
3、unshift()
- 向数组开头添加一个或多个元素,并返回新的数组长度
- 向数组前边加入索引以后,其它元素得索引会依次调整
arr.unshift('ss','ddd');//在开头添加ss,ddd
4、shift()
可以删除数组得第一个元素,并将删除得元素作为返回值返回
result=arr.shift();
</script>
</head>
<body>
</body>
forEach()方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
遍历数组一般使用for循环
JS为我们提供了一个方法,用来遍历数组
forEach()
-这个方法只支持IE8以上得浏览器
// 创建一个数组
var arr=['swk','zbj','shc'];
1、forEach()方法需要一个函数作为参数
- 像这种函数,由我们创建但是不由我们调用得,我们称为回调函数
- 数组中有几个元素,函数就会执行几次。每次执行时,浏览器会将遍历到
得元素,以实参得形式传递进来,我们就可以定义形参,来读取这些内容
- 浏览器会在回调函数中传递三个参数
- 第一个参数,当前在正在遍历得元素
- 第二个参数,就是当前正在遍历的元素得索引
- 第三个参数,当前正在遍历的数组
arr.forEach(function(a,b,c){
console.log(a)
});
</script>
</head>
<body>
</body>
slice()方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
1、slice()
- 从某个数组返回选定的元素,用来从数组中提取指定元素
- 该方法不会改变原数组,而是将截取到的值封装到一个新数组中返回
- 参数
1.截取开始的位置索引,包含开始索引
2.截取结束位置的索引,不包含结束索引
第二个参数可以省略不写,此时会截取从开始索引往后的索引
3.索引可以传递一个负值(表示从后往前数)
*/
// 创建一个数组
var arr=['swk','zbj','shc'];
arr.slice(0,2);
</script>
</head>
<body>
</body>
splice()方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
1、splice()
- 用于删除数组中的指定元素
- 使用splice会影响到原数组,会将指定元素从原数组中删除
并将被删除的元素作为返回值返回
- 参数
第一个参数,开始位置的索引
第二个参数,删除的数量
第三个及以后的参数,表示添加的新的元素,这些元素将会自动插入
到开始位置索引的前边
// 创建一个数组
var arr=['swk','zbj','shc'];
// 表示不删除,并在索引1前加入ss
var result=arr.splice(1,0,'ss')
</script>
</head>
<body>
</body>
数组剩余方法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script>
var arr=['孙悟空','猪八戒','沙和尚'];
var arr2=['白骨精','玉兔精','蜘蛛精'];
var arr3=['dd','fsd','ddfsda'];
1、concat() 可以连接两个或多个数组,并将新的数组返回
该方法不会对原数组产生影响
// 即可以连接数组,也可以连接元素
var result=arr.concat(arr2,arr3,'fdsf');
console.log(result);
2、join()
该方法将数组转换成一个字符串
该方法不会对原数组产生影响
-在join()中可以指定一个字符串作为参数,这个字符串将会称为数组中元素的
连接符.如果不指定连接符,则默认使用,作为连接符
var res=arr.join('-');
3、reverse()
-该方法用来反转数组
该方法会直接修改原数组
arr.reverse();
4、sort()
-可以用来对数组进行排序
直接对原数组进行修改,默认会按照Unicode编码进行排序
即使对于纯数字的数组,使用sort()排序时,也会按照Unicode编码排序
所以对数字进行排序时,可能会得到错误的结果
-可以自己指定排序规则
可以在sort()中添加一个回调函数,来指定排序规则
回调函数中需要定义两个形参
浏览器将会分别使用数组中的元素作为实参去调回调函数
它使用那个元素调用不确定,但是肯定的是在数组中 a一定在b 前边
-浏览器会根据回调函数返回值来决定元素的顺序
如果返回一个大于0的值,则元素交换位置
如果返回一个小于0的值,则元素位置不变
如果返回一个0,则认为两个元素相等,不交换位置
*/
arr.sort()
arr=[3,4,11,2,5];
arr.sort(function(a,b){
return a-b;// 升序
return a-b;// 降序
});
</script>
</head>
<body>
</body>