ES6 Set,Map
前情提要
for of =>可用在array,Set,Map返回value
for in =>可用在object,array,返回index(在array可能被擴充的情況下不建議使用)
forEach =>均可遍歷,但無法break離開遍歷(可用some或是every) http://www.jsnoob.com/2013/11/26/how-to-break-the-foreach/
如何遍歷object內的value?
var obj = { first: "John", last: "Doe" };
// Visit non-inherited enumerable keys
Object.keys(obj).forEach(function(key) {
console.log(obj[key]);
});第二種
Object.keys(this.state.users).map(function(objectKey, index) {
let value = objectKey;
return (
<div>{value}</div>
)
})ES6 的新數據結構Set Map
Set
可接受一個array來初始化,set類似array但每個成員的值不會相等,使用強型別
輸入set 將得到
Set 操作方法
1.
2.
Set的遍歷方法
想用array的操作方法來操作Set呢?
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/prototype
可將
將Set轉為arrray
實際使用
1.快速刪除array重複的元素
2.快速合併陣列,刪除重複元素
3.快速找到array中共同的元素(交集)
4.快速找到a陣列有但b陣列沒有的元素(差集)
Map
取得值
Map為了避免index衝突,須將index先指定給變數(除了數字,字串和boolean)
但
為undefined
Map的操作方法
Map的遍歷方法
實際使用
1.
2.
1.
1.
Last updated
Was this helpful?