前提條件
概要
類型:實踐
難度:中等
任務描述
題 1:查找數組對象中 age 大于 18 對象
編寫函數 filterAdult
,滿足
filterAdult([
{age: 19, name:'Jack'},
{age: 5, name:'Apple'},
{age: 12, name:'Lynn'},
{age: 25, name:'David'}
]);
// 輸出
[
{age: 19, name:'Jack'},
{age: 25, name:'David'}
]
題 2:判斷數組中是否所有的數字都大于 0
編寫函數 isAllNumPosive
,滿足
isAllNumPosive([1, 2, 3, 4]); // 輸出 true
isAllNumPosive([1, 2, 3, 4, -1]); // 輸出 false
isAllNumPosive([1, 2, 3, 4, 'a', {a:3}]); // 輸出 true
題 3:改變傳入的數組,將數組中第 n(從 0 開始算 ) 個元素放到數組的開頭
編寫函數 putFirst
,滿足
var arr = [1, 2, 3, 4];
putFirst(arr, 2);
// 此時 arr為 [3, 1, 2, 4]
題 4: 將 arguments 對象轉換成數組
編寫函數 toArray
,滿足
(function(){
var arr = toArray(arguments);
Array.isArray(arr); // 輸出 ture
})(1, 2);
**題 5:將數組中數字內容求和 **
編寫函數 sum
,滿足
sum([1, 2, 3, 4]); // 輸出 10
sum(['a', 1, 2, {a:3}, 3, 4, 1.2]); // 輸出 11.2
題 6: 將數組元素按 age 字段的值,從小到大排序
編寫函數 sortAge
,滿足
sortAge([
{age: 19, name:'Jack'},
{age: 5, name:'Apple'},
{age: 12, name:'Lynn'},
{age: 25, name:'David'}
]);
// 輸出
[
{age: 5, name:'Apple'},
{age: 12, name:'Lynn'},
{age: 19, name:'Jack'},
{age: 25, name:'David'}
]
題 7: 將數組元素去重,其中數組元素均為基本類性
編寫函數 uniq
,滿足
uniq([1,2,2,3,4,4,4,4]); // 輸出 [1,2,3,4]
uniq([1,2,'M','e','r', 'r', 'y']); // 輸出 [1,2,'M','e','r','y']
題 8: 將數組內容亂序
編寫函數 random
,滿足
random([1,2,3,4]); // 輸出的可能是 [1,2,3,4] 或 [1,3,4,2] 或 [3,4,1,2] 等等隨機可能