共计 3 篇文章

元类型系统是对JavaScript内建概念的补充

本文是一个系列,包括: JavaScript的元系统 - 在这里 JavaScript中创建原子的几种方法 - 在这里 元类型系统是对JavaScript内建概念的补充(本文) JavaScript的类型系统一贯是反人类的,以至于JavaScript之父Eich都会跳出来说“我做错了”。但是这并不是说它的整个类型系统就是不可理解的,相反,它提供了观察这门语言的多个不同角度。 远古JavaScript中的类型系统 在远古时期(我是指JavaScript 1.0)中,JavaScript的世界里还并没有“原型”这个东西,而且undefined也是一个奇葩的存在。 ...

JavaScript中创建原子的几种方法

本文是一个系列,包括: JavaScript的元系统 - 在这里 JavaScript中创建原子的几种方法(本文) 元类型系统是对JavaScript内建概念的补充 - 在这里 JavaScript中可以通过Object.create(null)来创建原子,这是非常自然而又易于理解的方式。不过也有一些其它的方法来实现相同的效果,虽然在概念上有所不同,但是它们创建的一样是“原子对象”。 创建原子 使用Object.create() // 方法1 atom = Object.create( ...

JavaScript的元系统

JavaScript的元系统 本文是对在第四届FEDay中分享的《无类继承:JavaScript面向对象的根基》的进一步讨论。也是对开源项目@aimingoo/metameta的解析。 本文是一个系列,包括: JavaScript的元系统(本文) JavaScript中创建原子的几种方法 - 在这里 元类型系统是对JavaScript内建概念的补充 - 在这里 以及相关下载: 资源分享:第四届FEDay讲演主题 - 在这里 ECMAScript中只有两处提及到“Meta”这个概念, ...