<template>
<div class="about">
es5数组新增方法
<a href="https://www.cnblogs.com/zxvictory/p/8088086.html">https://www.cnblogs.com/zxvictory/p/8088086.html</a>
<div>检测是不是数组</div>
<div>遍历数组(forEach)</div>
<div>筛选数组;原数组不变,返回新数组: 符合条件的项构成的</div>
<div>集体操作数组项;原数组不变,返回新数组: 集体操作后的数组项构成的 (filter)</div>
<div>判断 数组项是否符合条件;原数组不变;有一项不符合,就返回 false (map)</div>
<div>判断 数组项是否符合条件;原数组不变;只要有一项符合,就返回 true (every)</div>
</div>
</template>
<script>
export default {
name:'about',
data(){
return{
arr:[],
arr1:[4,1,2,3],
arr2 : [1,2,3,4,23,4,3,5,6],
}
},
components:{
},
computed:{
},
mounted(){
/*
this.isArr(); // 检测是不是数组
// 遍历 方法 开始
this.ArrForEach(); // 遍历数组
this.arrFilter(); // 筛选数组;原数组不变,返回新数组: 符合条件的项构成的
this.arrMap();//集体操作数组项;原数组不变,返回新数组: 集体操作后的数组项构成的
this.arrEvery();//判断 数组项是否符合条件;原数组不变;有一项不符合,就返回 false
this.arrSome();//判断 数组项是否符合条件;原数组不变;只要有一项符合,就返回 true
// 遍历 方法 结束
*/
// 数组的 增加、删除 方法
this.arrMethod();
},
methods:{
isArr(){
//
// 判断是否为数组
console.log(this.arr);
let result1 = toString.call(this.arr);
console.log(`方法1借用对象原型中的toString()方法:${result1}`)
let result2 = Array.isArray(this.arr)
console.log(`方法2es5中新方法,有兼容问题:${result2}`)
let result3 = this.arr instanceof Array
let result4 = this.arr instanceof Object //Object、Array、RegExp、Data 等
console.log(`方法3使用instanceof判断那种引用类型,IE8及以下不兼容:${result3} : ${result4}`)
},
ArrForEach(){
this.arr1.forEach((item,index)=>{
if(item > 3){
return false; //停止本次循环,继续下一次循环
}
console.log(item);
})
},
arrFilter(){
let result = this.arr2.filter((value, index, array) => {
return (value < 10)
})
console.log(result)
},
arrMap(){
let result = this.arr2.map((value, index) => {
return value * 10
})
console.log(result)
console.log(this.arr2)
},
arrEvery(){
let result = this.arr2.every((value, index) => {
return value < 3
})
console.log(result)
},
arrSome(){
let result = this.arr2.some((value, index) => {
return value > 3
})
console.log(result)
},
arrMethod(){
// push( ):末尾追加数组项;原数组改变;返回:新数组的长度
let arr1 = [1,2,3,4];
let arr1Result1 = arr1.push(5,6,7) //新数组的长度 原数组改变
console.log(arr1)
console.log(arr1Result1)
// unshift( ):开头追加数组项;原数组改变;返回:新数组的长度
let arr2 = [1,2,3,4]
let arr2Result1 = arr2.unshift(arr2);
let arr2Result2 = arr2.unshift(5,6,7)
console.log(arr2)
console.log(arr2Result1)
// pop:末尾删除数组项;原数组改变;返回 被删除的数组项
let arr3 = [1,2,3,4]
let arr3Result1 = arr3.pop()
console.log(arr3)
console.log(arr3Result1)
// shift( ):开头删除数组项;原数组改变;返回 被删除的数组项
let arr4 =[1,2,3,4]
let arr4Result1 = arr4.shift()
console.log(arr4)
console.log(arr4Result1)
// concat( ):末尾追加 数组 / 数组项;原数组不改变;返回 合并后的新数组
let arr5 = [1,2,3,4]
let arr6 = arr5.concat(5,6,[7,8])
console.log(arr5)
console.log(arr6)
// slice( ):截取数组;原数组不变;返回 截取出来的数组项 构成的新数组
}
},
}
</script>
es5数组新增方法 未完
于 2019-03-15 09:17:32 首次发布
307

被折叠的 条评论
为什么被折叠?



