仅显示以下 3 篇带「对象」关键字的文章。 返回词云  或  查看全部文章

关于 ArrayLike 的二三事

2012-11-29 by Dron

在浏览器中,经常会遇到一些具有部分数组特性的对象,如 Arguments、NodeList 等,这些对象是一组数据的有序集合,有长度、下标等特性。

它们不是真正意义的 Array,我们喜欢称作 ArrayLike 或「伪数组」,不能使用 Array 的原生方法来直接操作它们,但是可以跨原型链来对它们实施调用,如:

Array.prototype.slice.call( arguments, 0 );

通过挟持 this 指针在 JavaScript 中模拟 private

2011-11-06 by Dron

JavaScript 是一种解释型的、基于对象的脚本语言,没有严格意义上的类,在这一点上不同于 C++、Smalltalk 或者 Java,不过作为替代,它支持构造函数(constructors),可通过执行代码创建对象:给对象分配存储,然后通过赋初始值来初始化对象属性的全部或部分。构造函数有个指向其原型对象的属性叫做 prototype,利用 prototype 可模拟出一个基本可用的“类”来。

类有封装、继承和多态等特征,其中继承和多态不是本文关注的,本文侧重于探讨类封装中关于私有成员(private)的实现。