在这里插入代码片
@TOC
欢迎使用Markdown编辑器
js 数组函数
一 map此方法是将数组里面的每个元素调用一个提供的函数,结果返回一个新的数组,并没有改变原数组 如下图在这里插入代码片
还有一种是将数组中的每个元素执行传进提供的函数,没有返回值
二 filter()
此方法是将所有元素进行判断,将满足条件的元素作为一个新的数组返回,原数组不变
var newArr = arr.filter(function(fil){
// 如果过条件结果为true 则将返回元素存储到新数组中
return fil > 5
})
console.log(newArr)
console.log(arr)
三 forEarm()
此方法是将数组中的每个元素执行传进提供的函数,没有返回值
arr.forEach(function(a){
if(a > 5){
console.log(a)
}
})
四 reduce()
此方法是将所有元素调用返回函数,返回值的转后结果,传入的值必须是函数类型
var array = [1,2,3,4,5]; // a 累加和 b数组元素
var add = array.reduce(function(a,b){
return a += b
})
console.log(add)
五 Array.isArray()
判断一个对象是不是数组,返回的是布尔值
var str = 123
console.log(Array.isArray(str))
六 toString()
将数组转换为字符串
var array1 = [7,8,9]
var array2 = array.concat(array1)
console.log(array2,array,array1)
七 join()
此方法也是将数组转换为字符串
var str1 = array1.join("")
console.log(str1)
八 splice()
数组元素的添加修改删除操作
var array4 = [1,2,3,4,5,6,7,8]
console.log(array4)
九 reverse() 反转
var array5 = [1,2,3,4,5]
var array6 = array5.reverse()
console.log(array6,array5)
十 sort() 排序
var array7 = [45,16,35,8,4,3,72];
console.log(array7.sort())
var array8 = array7.sort(function(a,b){
if(false){
// 升序
return a-b
}else{
// 降序
return b-a
}
})
console.log(array8)
11push()
该方法向指定数组末尾添加一个或者多个数组元素
返回给我们新数组的长度
此方法会改变源数组的值
var arr = ["张三","李四","王五","赵六"]
console.log(arr)
var result = arr.push("田七","王八")
console.log(result)
console.log(arr)
console.log("======"+arr.length)
12pop()
该方法删除指定数组的最后一个元素
返回值是删除的元素
var ret = arr.pop();
console.log(ret)
console.log("======"+arr.length)
13unshift()
该方法向指定数组头部添加一个或者多个数组元素
返回给我们新数组的长度
此方法会改变源数组的值
var result = arr.unshift("牛大","王二麻子")
console.log(result)
console.log(arr)
14shift()
该方法删除指定数组的第一个元素
返回值是删除的元素
var ret = arr.shift()
console.log(ret)
console.log("======"+arr.length)
console.log(arr)