[TOC]
# 數組的方法
## 1增加(改變數組的內容)
### 1.1push() //從尾部添加
~~~
var arr = [1,2,3];
arr.push(4);
console.log(arr); //1,2,3,4
~~~
~~~
//push方法復制數組
var arr = [12,11,33];
var b = [];
for(var i=0;i<arr.length;i++){
b.push(arr[i]);
}
console.log(b);
~~~
### 1.2unshift() // 從頭部添加
~~~
var arr = [1,2,3];
arr.unshift(0);
alert(arr); //0,1,2,3
~~~
### 1.3增加 concat()(不改變原來數組內容)
concat(value|[arr]) 本方法可以傳單個值,也可以傳數組
~~~
var arr = [1,2,3];
var b = arr.concat(4);
console.log(arr); //1,2,3
console.log(b); //1,2,3,4
eg:復制數組
var arr=[1,2,3];
var b =[].concat(arr);
console.log(b); //1,2,3
~~~
## 2刪除(改變)
不接收參數
### 2.1pop() //從尾部刪除
~~~
var arr = [1,2,3];
alert(arr.pop()); //3
alert(arr) //1,2
~~~
### 2.1shift() // 從頭部刪除
~~~
var arr = [1,2,3];
alert(arr.shift()); //1
alert(arr) //2,3
~~~
## 3修改,指定三個參數arrObject.splice(index,howmany,item)
~~~
//指定三個參數:起始位置,刪除的項數,插入的數量
var arr = [1,2,3,4,5];
arr.splice(0,2,6,7);
alert(arr); //6,7,4,5
~~~
## 4查詢
### 4.1 arr[index]
~~~
//arr[index] 查詢對應下標的值
var arr=[1,2,3];
console.log(arr[0]); //1;
~~~
### 4.2indexOf(value)
~~~
//indexOf(value) 查詢對應值的下標
var arr=[1,2,3,4];
console.log(arr.indexOf(1)); //0
//如果沒有對應的值,則返回-1
~~~
### 4.3slice()
~~~
//arrayObject.slice(start,end)
//1個參數
var arr=[1,2,3,4];
var b=arr.slice(1);
console.log(b); //2,3,4
//2個參數
var c = arr.slice(1,3);
console.log(c); //2,3
~~~
~~~
slice復制數組
var arr = [1,2,3];
var b = arr.slice(0);
console.log(b);
~~~
## 5.splice(改變原來數組) 包含增,刪,改
### a.增加,指定三個參數splice(index,howmany,item)
~~~
//splice(index,howmany,item)
//傳3個參數表示:起始位置、0(刪除的項數)、插入的項在index之后
var arr= [1,2,3,4,5];
arr.splice(2,0,"red","green"); //在第2位之后,增加2個元素
console.log(arr); //[1,2,"red","green",3,4,5]
~~~
### b.刪除,指定兩個參數splice(index,howmany)
~~~
//splice(index,howmany)
//傳2個參數表示:起始位置和刪除的個數
var arr = [1,2,3,4,5];
arr.splice(0,2); //從0位開始,刪除2個
alert(arr); //[3,4,5]
~~~
### c.修改,指定三個參數splice(index,howmany,item)
~~~
//指定三個參數:起始位置,刪除的項數,插入的數量
var arr = [1,2,3,4,5];
arr.splice(0,2,6,7);
alert(arr); //6,7,4,5
~~~
## 6.join
~~~
//通過指定分隔符,將數組所有元素放入字符串
arrayObject.join(separator)
var arr=["red","green","yellow"];
var a = arr.join(); //red,green,yellow
var b= arr.join(""); //redgreenyellow
var c=arr.join("."); //red.green.yello
alert(c);
~~~
## 7.排序
### a.升序
~~~
var arr = [1,12,34,5,6];
var c = arr.sort(function(a,b){
return a-b;
});
console.log(c); //[1,2,5,6,12,34]
~~~
### b.降序
~~~
arr.sort(function(a,b){
return b-a;
});
~~~
## 8歸并(求和)方法
~~~
var numbers = [1,2,3,4,5];
var sum = numbers.reduce(function(prev,cur,index,array){
return prev+cur;
});
alert(sum); //15
~~~
## 9 reverse()
~~~
//顛倒數組中的元素
返回值 ——數組
eg:
var arr = [12,11,33];
var b = arr.reverse();
console.log(b); //33,11,12
~~~
- JS入門教程
- 第1章 JS基本語法
- 練習
- 1.1 補充教程
- 第一節 拓展
- 第2章 控制語句DOM,BOM,事件
- 第一節 錯誤機制
- 第二節 拓展
- 第三節 事件
- 1-1 事件流
- 1-2 事件處理程序
- 1-2-1 事件獲取form-input的值
- 1-2-2DOM0 級事件處理程序
- 1-2-3 DOM2級事件處理程序
- 第四節 if-else
- 第3章 DOM拓展
- 第一節 DOM
- 1.1 補充
- 第二節 DOM02
- 第三節 總結
- 1.節點層次
- 第4章 函數
- 第一節 函數就是值
- 第二節 函數的參數
- 第三節 對象的方法
- 第四節 改變this
- 第5章 數組
- 第一節 數組的方法
- 1.1 創建數數組
- 1.2增刪改查的方法
- 1.3數組檢查
- 1.4二維數組
- 1.5獲取數組中最大的值
- 第二節 數組拓展
- 1.1數組constructor 屬性
- 1.2prototype屬性
- 1.3獲取數組中最大值的方法
- 1.4補充展開語法
- 1.5from對數組迭代
- 1.6遍歷
- 1.7 數組下標集合,值的下標
- 第三節 拓展
- 第四節 瀑布流代碼實現
- 第6章 基本類型和引用類型的區別
- 第7章 字符串
- 第8章 JS內置對象
- 第9章 動畫
- 第10章 正則
- 第一節 創建正則表達式
- 第二節 string中支持正則的api
- 第三節 正則對象的屬性
- 拓展學習資料
- 第四節 語法
- 第五節 例子
- 5-1 獲取一串字符串中的數字
- 第11章 ajax
- 第一節 原生ajax
- 第二節 http,get,post
- 第三節 跨域
- 3-1 http-server跨域
- 3-2 koa-跨域
- 第四節 jquery-ajax
- 4-1 $.ajax
- 第五節 axios
- 第12章 面向對象
- 第一節 原型
- 第二節 原型鏈,繼承
- 第三節 多態
- 第四節 ajax-http
- 4-1 靜態方法http
- 第13章 cookie,LocalStorage,sessionStorage
- 13-1
- 第14章 erros
- 第15章 koa-router
- 第16章 模板化
- JS拓展教程
- 第一章 JS基礎
- 第三章 高級語法
- 2-1 閉包
- JS工具
- 第一章 百度地圖
- js框架
- mock.js
- JS特效
- 1.簡書點擊div,滾動到頂部
- 2.jquery 點擊a緩慢跳轉到對應ID
- 3.獲取滾動條距離頂部的高度
- 第二階段項目
- 2-1.豆瓣數據到mongDB