立个flag:)
今天开始看vue源码,重新学习js
var hashObj = Object.create(null);
Object.create(null)可以生成一个没有任何属性、方法的空对象,那么这个对象可以用来做什么呢。
今天,我发现原来还可以把它当作hashtable,一个存放唯一键值对的表。
举个例子:
var unique = function (arr) {
var hash = Object.create(null),
i = arr.length,
key, res = []
while (i--) {
key = arr[i]
if (hash[key]) continue
hash[key] = 1
res.push(key)
}
return res
}
刚刚我们定义了一个名为unique的去重方法,是不是很棒!