将一个字符循环 N 遍

function repeat(value,n){
    (new Array(n+1)).join(value)
}
//ps :
//设计思路,利用数组的 join 连接方法,达到循环 n 遍的逻辑
//为什么是 N + 1 
//new Array(10) 会创建一个数组长度为 10 的数组
//但是元素与元素之间的链接只有 9 , 所以上面是 N + 1


Array forEach

使用 forEach 代替 for 循环
var array = ["a","b","c","d","e","f"];
array.forEach(function(item,index){
    console.log(index,item);
});


Array map

返回一个由原数组中的每一个元素调用一个指定方法后的返回值的集合组成一个新的数组
var array = ["a","b","c","d","e","f"];
var new_array = array.map(function(item,index){
    console.log(index,item);
    return item;
});
// new_array 输出得到 ["a","b","c","d","e","f"];


Array indexOf

在一个一维数组中搜索指定对象,并返回其首个匹配项的索引。
如果没有匹配到将返回 -1
var array = ["a","b","c","d","e","f"];
array.indexOf("b");  // 返回 1
array.indexOf("f");  // 数组中没有 f 元素, 返回 -1


Array concat

合并两个数组
var array1 = ["a","b","c","d","e","f"];
var array2 = [1,2,3,4,5,6];
var array = array1.concat(array2); // 将数组 array2 追加到 array1 后面


Array sort

数组排序
var array = [2,3,3,2,5,6,4];
// 从小到大排序
array.sort(function(min,max){
    return min - max;
});
//从大到小
array.sort(function(min,max){
    return max - min;
});


Object keys

返回给定对象的所有可枚举的属性名(键值)组成的数组
var obj = {
    "name" : "张三",
    "age" : "李四",
    "sex" : "男"
}
var keys = Object.keys(obj); // ["name","age","sex"] 返回结果
//使用 Arraay  forEach 循环
keys.forEach(function(key){
    var value = obj[key]; // 根据键值获取对应的 Value
    console.log(value);
});


for in

遍历数组或者对象的属性
//数组对象
var array = ["a","b","c","d","e","f"];
for(var index in array){
    var value = array[index]; // 根据下标获取数组对应的值
    console.log(value);
}
字典对象
var obj = {
    "name" : "张三",
    "age" : "李四",
    "sex" : "男"
}
for(var key in obj){
    var value = obj[key];  // 根据键值获取对应的 Value
    console.log(value);
}