这没什么好说的,记录一下vue源码里面Set的定义,很简单;
//检查当前环境下是否有Set类, 并且 Set.toString()=== 'native code'
if (typeof Set !== 'undefined' && isNative(Set)) {
_Set = Set;
} else {
// vue中js实现Set
_Set = (function () {
function Set () {
this.set = Object.create(null);
}
Set.prototype.has = function has (key) {
return this.set[key] === true
};
Set.prototype.add = function add (key) {
this.set[key] = true;
};
Set.prototype.clear = function clear () {
this.set = Object.create(null);
};
return Set;
}());
}
源代码在vue 中的vue.esm.js 500行左右;
如果帮到你,谢谢点赞!