數(shù)組有哪些方法
一、操作方法
1锹雏、增
(1):push()添加到數(shù)組末尾任意或多個值
<script>
var getNumber=[1,2,3,4];
getNumber.push(5,6,7);
console.log(getNumber);
// 那么打印出來的getNumber就是[1,2,3,4,5,6,7]
</script>
(2):unshift() 添加任意多個值在數(shù)組的頭部
<script>
var getNumber=[1,2,3,4];
getNumber.unshift(5,6,7);
console.log(getNumber);
// 那么打印出來的getNumber就是[5,6,7,1,2,3,4]
</script>
(3):concat() (數(shù)組拼接)返回這個新構(gòu)建的數(shù)組
<script>
var getNumber1=[1,2,3,4];
var getNumber2=[10,9,4]
var getNumber3=getNumber1.concat(getNumber2)
console.log(getNumber3);
// 那么打印出來的新數(shù)組getNumber3就是[1,2,3,4,10,9,4]
</script>
2要拂、刪
(1):pop() 尾部(最后一位)刪除一個值
<script>
var getNumber=[1,2,3,4];
getNumber.pop();
console.log(getNumber);
// 那么打印出來的數(shù)組getNumber就是[1,2,3]
</script>
(2):shift() 頭部(第一位)刪除一個值
<script>
var getNumber=[1,2,3,4];
getNumber.shift();
console.log(getNumber);
// 那么打印出來的數(shù)組getNumber就是[2,3,4]
</script>
(3):splice() 從第幾個下標(biāo)上的值開始刪除抠璃,共刪除幾個
<script>
var getNumber=[1,2,3,4,5,6,7,8,9];
getNumber.splice(2,3);
console.log(getNumber);
// 那么打印出來的數(shù)組getNumber就是[1,2,6,7,8,9]
// splice(2,3); 2代表從下標(biāo)為二的開始 3代表共刪除三個
//所以3,4,5被刪除
</script>
3、*改*
splice()除了刪除功能外還可以更改刪除位置的值
<script>
var getNumber=[1,2,3,4,5,6,7,8,9];
getNumber.splice(2,3,10,11,12,13);
console.log(getNumber);
// 那么打印出來的數(shù)組getNumber就是[1,2,10,6,7,8,9]
// splice(2,3,10); 2代表從下標(biāo)為二的開始 3代表共刪除三個 所以3,4,5被刪除
//10表示在下標(biāo)2的位置更改了一個值為10脱惰,也可以更改多個用逗號隔開,他們會依次排序搏嗡,會影響后邊值的下標(biāo)
</script>
4、*查*
indexOf() 在數(shù)組或字符串中查找元素拉一,找到就返回元素的下標(biāo)采盒,沒找到就返回-1
<script>
var getNumber=[1,2,3,2,5,6,7,8,9];
var res=getNumber.indexOf(2);
console.log(res);
// 那么打印出來的res就是1
// 1是下標(biāo),對應(yīng)的就是數(shù)字2蔚润,indexOf找到第一個相同值就返回磅氨,不會去找下一個
// 如果indexOf沒有找到相同值,就會返回-1
</script>
二抽碌、排序方法
reverse() 翻轉(zhuǎn)
<script>
var getNumber=[1,2,3,4];
getNumber.reverse();
console.log(getNumber);
// 那么打印出來的數(shù)組getNumber就是[4,3,2,1]
</script>
三、轉(zhuǎn)換方法
join() 把數(shù)組拼接成字符串()中放鏈接號(不會更改原數(shù)組决瞳,需要一個新的變量去接)
<script>
var getNumber=[1,2,3,4];
var res=getNumber.join('-');
console.log(getNumber);
console.log(res);
// 打印出來的數(shù)組getNumber依舊是[1,2,3,4]
// 打印出來的res就變成了字符串 1-2-3-4
</script>
四货徙、迭代方法
some()
對數(shù)組每一項都運(yùn)行傳入的函數(shù),如果有一項函數(shù)返回 true 皮胡,則這個方法返回 true
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
let someResult = numbers.every((item, index, array) => item > 2);
console.log(someResult) // true
every()
對數(shù)組每一項都運(yùn)行傳入的函數(shù)痴颊,如果對每一項函數(shù)都返回 true ,則這個方法返回 true
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
let everyResult = numbers.every((item, index, array) => item > 2);
console.log(everyResult) // false
forEach()
對數(shù)組每一項都運(yùn)行傳入的函數(shù)屡贺,沒有返回值
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
numbers.forEach((item, index, array) => {
// 執(zhí)行某些操作
});
filter()
對數(shù)組每一項都運(yùn)行傳入的函數(shù)蠢棱,函數(shù)返回 true 的項會組成數(shù)組之后返回
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
let filterResult = numbers.filter((item, index, array) => item > 2);
console.log(filterResult); // 3,4,5,4,3
map()
對數(shù)組每一項都運(yùn)行傳入的函數(shù),返回由每次函數(shù)調(diào)用的結(jié)果構(gòu)成的數(shù)組
let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];
let mapResult = numbers.map((item, index, array) => item * 2);
console.log(mapResult) // 2,4,6,8,10,8,6,4,2