一 、數組 1、迭代數組(斐波那契數列迴圈) 2、數組操作 push() //添加元素到數組末尾 unshift() //添加元素到數組首位 pop() //刪除數組最後元素 shift() //刪除數組首位元素 splice(5,3,2,3,4) //從索引5開始刪除3個元素,並開始添加元素2,3 ...
一 、數組
1、迭代數組(斐波那契數列迴圈)
var fibonacci = []; fibonacci[1] = 1; fibonacci[2] = 2; for(var i = 3;i < 20;i++){ fibonacci[i] = fibonacci[i-1] +fibonacci[i-2]; }
2、數組操作
push() //添加元素到數組末尾
unshift() //添加元素到數組首位
pop() //刪除數組最後元素
shift() //刪除數組首位元素
splice(5,3,2,3,4) //從索引5開始刪除3個元素,並開始添加元素2,3,4.
***多為數組迭代用多重迴圈
3、數組方法
合併
- concat() //連接數組並返回結果
迭代
every() //對數組的每一項運行給定函數,若都返回ture則返回true
- some() //對數組的每一項運行給定函數,若任一項返回ture則返回true
- filter() //對數組的每一項運行給定函數,返回true的項組成的數組
- forEach() //對數組的每一項運行給定函數,無返回值
- map() //對數組的每一項給定函數,返回每次函數調用的結果組成的數組
- reduce() //previousValue、currentValue、index和array四個參數進行求和
排序
- reverse() //顛倒數組元素的順序
- sort() //按照字母順序排序,也可根據排序方法進行排序
搜索
- indexOf() //返回第一個與給定參數相等的元素索引,沒有找到則返回-1
- lastIndexOf() //返回在數組中搜索道德與參數相等的元素的索引的最大值
- slice() //傳入索引值,將數組裡對應索引範圍內的元素作為新數組返回
輸出為字元串
- toString() //將數組作為字元串返回
- valueOf() //將數組作為字元串返回
- join() //將所有元素連成字元串
***es6數組的新功能
(1)使用forEach和箭頭函數迭代
number.forEach(x => { console.log((x % 2 == 0)) })
(2)使用for...of迴圈迭代
for(let n in number){ console.log((n % = 2) ? 'even' : 'odd'); }
(3)@@iterator屬性
entries() //返回包含鍵值對的@@interator
let aEntries = numbers.entries(); console.log(aEtries.next().value); //[0,1]位置0的值為1 console.log(aEtries.next().value); //[1,2]位置1的值為2
key() //返回包含索引的@@interator
let aKeys = number.keys(); console.log(aKeys.next()); //{value:0,done:false} console.log(aKeys.next()); //{value:1,done:false} console.log(aKeys.next()); //{value:0,done:falseval
value() //返回數組的值
let aValues = numbers.values(); console.log(aValues.next()); // {value: 1, done: false } console.log(aValues.next()); // {value: 2, done: false } console.log(aValues.next()); // {value: 3, done: false }
(4)form()方法 //根據已有的數組創建新數組或者過濾數組
let numbers2 = Array.from(numbers); //還可以傳入一個用來過濾值的函數,例子如下: let evens = Array.from(numbers, x => (x % 2 == 0)); //上面的代碼會創建一個evens數組,其中只包含numbers數組中的偶數。
(5)Array.of方法 //根據傳入的參數創建一個新數組
let numbers3 = Array.of(1); let numbers4 = Array.of(1, 2, 3, 4, 5, 6); //我們也可以用這個方法複製已有的數組 let numbersCopy = Array.of(...numbers4); //展開操作符(...)會把numbers4數組裡的值都展開成參數。