let arrs = ['a','b','c','d','e']
for in
for(let item in arrs){
console.log(item)
}
// 0
// 1
// 2
// 3
// 4
for of
for (let item of arrs){
console.log(item)
}
// a
// b
// c
// d
// e
forEach()
arrs.forEach((value,key)=>{
console.log(value,key)
})
// a 0
// b 1
// c 2
// d 3
// e 4
扩展运算符『…』
console.log(...arrs)
//a b c d e
总结:
for in 输出 key
for of 输出 value
forEach 两个同时可以输出
『…』直接输出value
Array.from()方法
就是将一个类数组对象或者可遍历对象(比如set数据结构的对象)转换成一个真正的数组。
console.log(Array.from('foo'));
// expected output: Array ["f", "o", "o"]
console.log(Array.from([1, 2, 3], x => x + x));
// expected output: Array [2, 4, 6]
可以关注ES6学习笔记中的扩展运算符部分,可以实现相似功能:
console.log([...'foo']); // ["f", "o", "o"]
这里提一下str.split()方法,可以将字符串切割为数组:
"2:3:4:5".split(":")
//将返回["2", "3", "4", "5"]
"|a|b|c".split("|")
//将返回["", "a", "b", "c"]
"hello".split("")
//可返回 ["h", "e", "l", "l", "o"],分割单词
"hello".split("", 3)
//可返回 ["h", "e", "l"],取单词前三个字母
也顺便提一下将数组重组为字符串的方法:
toString(),toLocalString(),join()