var test = "Class01"; function Class01(privateValue, publicValue) { var _this = this; if (this.constructor.name !== 'Class01') { throw new Error('类只能被实例化'); } /*统计实例化次数的自执行函数*/ (function newClass() { Class01.count++; /*统计实例化的次数*/ Class01.intance…
class 相对 function 是后出来的,既然 class 出来了,显然是为了解决 function 在处理面向对象设计中的缺陷而来.下面通过对比,来看看 class 作为 ES6 中的重大升级之一的优势在哪里:为了更好的对比,请参见我的另外一篇博文: js面向对象设计之 function 类. 1.class 写法更加简洁.含义更加明确.代码结构更加清晰.2.class 尽管也是函数,却无法直接调用(不存在防御性代码了).3.class 不存在变量提升.4.class 为污染 windo…