
javascript
iteye_9715
这个作者很懒,什么都没留下…
展开
-
javascript中如何创建对象
在js中,对象是对象,函数也是对象,对于java程序员来说,这非常容易造成困惑。 而且究竟什么是类呢? js好像也没有一个明确的规范。我目前的理解是,把prototype当作类型接口,但实际上对于js来说,创建一个对象,并不一定需要创建一个新的类型。 这就造成了在js中创建对象的奇怪行为, 最简单的构造方式: [code="javascript"] var oObj = new Obje...2009-11-06 09:03:08 · 83 阅读 · 0 评论 -
javascript中如何模拟继承机制
构造函数使用this关键字给所有属性和方法赋值,因为构造函数仅仅是一个普通函数,因此可以使ClassA的构造函数成为ClassB的方法,然后调用它。ClassB会收到ClassA的构造函数中定义的属性和方法。 很抽象的一段话,具体的实现应该是什么样子的呢? 我们先看一段简单的代码: [code="javascript"] function ClassA(sColor) { this...2009-11-10 09:31:42 · 102 阅读 · 0 评论 -
JavaScript Design Pattern - 1. The Language
JavaScript本身并不是完全的面向对象的语言,它和C++/Java的相似程度还没有和Lisp等函数式编程语言来得接近。 有人说,JavaScript是披着面向对象的语法糖衣的函数式编程语言。 想要学好JavaScript, 对它的某些特性就不得不有所了解: 1. 灵活性 JavaScript提供了许多灵活的方式来实现某个特定的功能,你可以用简单的,面向进程的方式来实现,你也...原创 2010-10-25 15:36:14 · 141 阅读 · 0 评论 -
JavaScript Design Pattern - 2. Interface
想要在JavaScript中应该面向对象的设计模式,首先就需要JavaScript支持某些面向对象的语言特性,比如说继承,封装,多态等等。至于这些语言特性所带来的好处,这里就不多说了。如果你并不打算使用JavaScript设计非常复杂的应用,你也应该对这些东西有所了解,至少它可以帮助你把代码写的更简洁,同时它也提供了一些写JavaScript代码的新思路。 为何要模拟接口?(Interf...原创 2010-10-26 14:02:50 · 99 阅读 · 0 评论 -
JavaScript Design Pattern - 3. Encapsulation vs Information Hiding
封装和信息隐藏是面向对象编程语言中的两个重要的概念,我们可以认为两者是同一事物的不同表述,信息隐藏是目的,而封装则是手段。 我们知道,在c++/Java中,有访问修饰符public, protected和private,来对变量或者方法的访问域进行设置,而在JavaScript中,并没有类似的修饰符。因此,我们必须通过模拟的方法来达到这一目的。 在讨论如何模拟private之前,有几个...原创 2010-10-27 10:31:08 · 156 阅读 · 0 评论 -
highcontrast bookmarklet
最近项目实在太忙,一直没有时间学习和写博客。 昨天闲下来一点,就利用之前写的代码做了一个high contrast bookmarklet。有需要做accessibility testing的朋友可以用一用,还是很好使的。 不过目前只在firefox上测试过。 把以下链接存到书签里面就可以了,然后每次打开一个新的页面,点击以下该书签,就可以将页面转化成hi...原创 2010-05-21 09:06:10 · 104 阅读 · 0 评论 -
javascript疑难解答
前段时间去听了一个同事的knowledge share session,他大致给我们讲了一些写javascript需要注意的一些细节。session本身并没有什么问题,但是后来大家由此引申出来的讨论引发了我的思考。 这些讨论的内容有点杂乱,边边角角都涉及一点。我花了些时间,写了一些testcase,试图找出其中的规律,并希望对大家有所帮助。 先来看一个简单的例子: [code="ja...原创 2010-05-24 15:28:44 · 112 阅读 · 0 评论 -
javascript 疑难解答之2
昨天仔细琢磨了javascript的一些问题,自己觉得还挺不错的,后来跟公司另一位大牛讨论了一下,才发现其实自己把问题复杂化了,大牛说了这样一句话: [b]我们只要确定该语句被执行时的环境就可以断定this的意义了[/b] 真的是一语中的啊,很多长久以来我对js的奇怪问题的疑惑,居然只要一句话就可以解释。 一旦对此有所了解,顿时觉得自己对js的认识更深了一层。 PS...原创 2010-05-25 14:37:12 · 104 阅读 · 0 评论