2019年1月3日
數(shù)組
==================字面量創(chuàng)建數(shù)組==================
1. var arr=[]; []里邊可以放數(shù)字,字符串,true,false,null,undefined,數(shù)組([1,2,3]),對象{x:1,y:2}
var arr=[1,2.3,true,false,null,undefined,[1,2,3],{x:1,y:2}]
2. var x=1;
var arr=[x,x+3,x*5];
3 var arr=[ , , ]? ?
console.log(arr.length);? ?輸出的長度是2? 只讀到有效的為止?
4 var arr=[ 1 , , 3];
console.log(arr);? ? ?輸出結(jié)果是[1, , 3]? 單獨輸出下標(biāo)為1的是arr【1】結(jié)果是undefined
=================通過構(gòu)造函數(shù)Array()創(chuàng)建數(shù)組=============
1 var a=new Array() 創(chuàng)建了個空數(shù)組
2 var a=new Array(5) 創(chuàng)建數(shù)組 5個空數(shù)組
3 var a=new Array(1,2,‘king’,false,2.3,null); 結(jié)果是【1,2,‘king’,false,2.3,null】
4 var arr=【1,2,3,4】;
arr【0】=‘king’;? 替換下標(biāo)是0的元素內(nèi)容
5
var arr=[];
arr[0]='a';
arr[1]='b';
arr[-123]='c';
arr[2.3]='d';
arr[null]='e';
arr[false]='f';
arr[undefined]='g';
arr['name']='h';
arr[4]="pp";
console.log(arr); 輸出全部的數(shù)組?
console.log(arr[3]); //undefined
console.log(arr.length);? 數(shù)組的長度為5? ?(4+1)
6
var arr1=new Array(10);
arr1=[];
arr1[100]='abc';
console.log(arr1.length);? ?長度是101? (100+1)
7 定義數(shù)組的長度是3,后邊數(shù)組不加
var arr=[1,2,3,4,5,6,7,8];
arr.length=3;
console.log(arr);
8 Object.defineProperty(arr,'length',{writable:false })? 對象定義性質(zhì)? arr的長度不可寫
var arr=[1,2,3];
Object.defineProperty(arr,'length',{
writable:false
});
console.log(arr.length);? ? ?長度是3
arr.length=10;
console.log(arr.length);? ? 長度還是3? 定義了長度不可寫 所以還是3
========================方法==========================
1 arr.shift()開頭刪除
2 arr.unshift()開頭添加
3 arr.push()尾部添加
4 arr.pop()尾部刪除
5 delete? arr【0】刪除下標(biāo)為0的元素? 位置保留
6 arr.join()將數(shù)組內(nèi)元素組合成一個字符串
7 arr.reverse()將數(shù)組元素反過來輸出
8 arr.sort()將數(shù)組元素按照ASCII碼排序
9 arr.concat()組合數(shù)組? ?用來連接兩個或者多個數(shù)組 該方法不會改變現(xiàn)有的數(shù)組。而僅僅會返回被連接數(shù)組的一個副本
10 arr.slice()截取
var arr=['a','b','c','d','e','f','g','h'];
res=arr.slice(0,3);? ? ?輸出是a,b,c? ?截取的是從下下標(biāo)為0開始到下標(biāo)為3之間的元素? 但是不包括下標(biāo)是3的元素
res=arr.slice(2,-3);輸出是c,d,e? 截取的是從下標(biāo)為2開始到從后數(shù)第三之間的元素,不包括下標(biāo)為-3的元素
res=arr.slice(4);輸出結(jié)果是e,f,g,h 截取的是下標(biāo)為4的元素到元素結(jié)束? 沒有限制
11 arr.splice(index,howmany,item1,item2........itemx)
index:必需。整數(shù),規(guī)定添加/刪除項目的位置,使用負數(shù)從數(shù)組結(jié)尾數(shù)起
howmany:必需。要刪除的項目數(shù)量,如果沒有設(shè)置為0,則不會刪除
item2........itemx:向數(shù)組增加新數(shù)組。
var arr=['a','b','c','d','e','f','g','h'];
aes=arr.splice(0,1)? ?aes刪除的元素是 a (也就是從下標(biāo)0元素開始到下標(biāo)1元素刪除 不包括下標(biāo)為1的元素) arr剩下的是b,c,d,e,f,g,h
aes=arr.splice(5)? aes刪除的元素是f,g,h(也就是從下標(biāo)5元素開始到結(jié)束)? ?arr剩下的是a,b,c,d,e
aes=arr.splice(0,2,‘!’,‘?’,‘%’)? ? 從下標(biāo)0元素開始刪除2個 在向數(shù)組添加! ? %? 結(jié)果是‘!’,‘?’,‘%’','c','d','e','f','g','h'
12 .map()
var arr=【1,2,3,4,5】;
res=arr.map(function(x){
return x*x;
})
console.log(res);結(jié)果是1,4,9,16,25? ? ?數(shù)組平方
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
var arr=['a!','b!','c','d!','e'];
res=arr.map(text); 調(diào)用函數(shù)
function text(x){
return x.replace(/!/g,'?').toUpperCase();? ? ??replace替換 將!替換成?? ?toUpperCase轉(zhuǎn)換成大寫
}
console。log(res);? ? ? ‘A?’ ,‘B?’ , ‘C’? ,‘D?? ?,‘E’
13 篩選過濾filter
console.log(res);
var arr=[1,3,4,5,5,623,4,345,4367,null,undefined,false,true,''];
res=arr.filter(function(x){
return x<=10;
});
res=arr.filter(function(x){
return x%2==0;
});
res=arr.filter(function(x){
return x!==undefined && x!=null;
});
console.log(res);
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
every所有的元素判斷? ?some一些元素部分元素
var age=[12,34,55,66,28,19];
res=age.every(function(x){
return x>=18;? ? ? ? ? ? ? ? 結(jié)果 false
});
res=age.some(function(x){
return x>=19;? ? ? ? ? ? ? ? 結(jié)果 true
});
console.log(res);
14 求和?reduce
var arr=[1,2,3,4,5];
res=arr.reduce(function(a,b){
return a+b;
});
res=arr.reduce(function(a,b){
return a+b;
},10);? ? ? ? ? ? ? ? ? ?,10如果有逗號10的話最后結(jié)果在加10
console.log(res);
15 indexOf 找下標(biāo)? 如果有這個元素則找出下標(biāo)是多少 如果沒有這個元素那輸出結(jié)果是-1
var arr=['a','b','c','d','e','a','bv','a'];
res=arr.indexOf(‘a(chǎn)’);? ? ?結(jié)果是0
res=arr.indexOf(‘b’);? ? ?結(jié)果是1
res=arr.indexOf(‘A’);? ? 結(jié)果是-1
res=arr.indexOf(‘a(chǎn)’,2); 結(jié)果是5? ?這個找的是第二個a元素的下標(biāo)
res=arr.lastindexOf(‘a(chǎn)’);? 結(jié)果是7 這個找的是最后一個a元素的下標(biāo)
轉(zhuǎn)載于:https://www.cnblogs.com/duleilei/p/10218654.html
總結(jié)
- 上一篇: EventBus源码分析
- 下一篇: vue-cli 使用better-scr