脚本高级篇
文章平均质量分 84
yangdengfeng2003
这个作者很懒,什么都没留下…
展开
-
在JavaScript面向对象编程中使用继承(1)
前几天做了一个JScript版的CollecionBase类,用来解决需要使用集合作为主要数据结构的类的基类。不过当时挺忙的没有给出继承的示例,搞得有的网友对JavaScript继承比较迷惑,于是今天使用四种方式来分别实现了4个ArrayList派生类。 关于使用JavaScript进行面向对象编程(OOP),网上已有很多的文章说过了。这里我推荐两篇文章大家看看,如果没有理解怎么使用J原创 2007-05-05 18:27:00 · 391 阅读 · 0 评论 -
理解并解决IE的内存泄漏方式[翻译3]
这一节非常的让人郁闷,不管是翻译过程还是文章内容本身。居然对DOM的这样简单操作区别都可以带来这么大的泄漏问题,真的是没有语言了。看完后欢迎说说你的感受,我的感受附在了文尾。 页面交叉泄漏(Cross-Page Leaks) 这种基于插入顺序而常常引起的泄漏问题,主要是由于对象创建过程中的临时对象未能被及时清理和释放造成的。它一般在动态创建页面元素,并将其添加到页面DO原创 2007-05-05 18:42:00 · 519 阅读 · 0 评论 -
理解并解决IE的内存泄漏方式[翻译2]
大家节日快乐!俺就继续这个IE内存泄漏的主题来作为节日礼物了,并且相当欢迎大家来一起讨论。这一节讲Closures引起的内存泄漏,最后我还是决定把Closures翻译成了闭包或闭包函数。而且又在KB中看到一个对Closures的解释,它是这么说的:HTML>HEAD>script language="javascript">function initpage(){ window.s原创 2007-05-05 18:41:00 · 452 阅读 · 0 评论 -
理解并解决IE的内存泄漏方式[翻译]
这篇文章其实已经看了有些日子了,并且最近的一些开发都在尽量的遵循文中的原则。可是目前的情况是代码规模稍微大点以后,IE的内存泄漏还是很严重,于是我非常生气(倒没啥后果)觉得该把这篇文章挖出来批批。为了方便批斗,所以决定先给翻译成中文,结果在精读以后,发现每个泄漏情景的描述和避免,作者几乎都留了一手,所以这么看来文章又都对了,没啥可批的啦。只是让我想起啦真的刘一手。。。Author: J原创 2007-05-05 18:40:00 · 525 阅读 · 0 评论 -
绝对的单表格支持横纵表头锁定示例
使用css锁定表格column的header是Web开发中很经典的一个trick,这个问题在THIN同学的这篇文章中有较多的讨论。下面的这个实现示例主要是在前人的基础上进行了整合和打磨,可以不太谦虚地说是目前最sexy的表头锁定实现。当然你一定要甩蛋拍砖,如果是有改进建议的砖头,那是相当的欢迎!。原创 2007-05-05 18:39:00 · 608 阅读 · 0 评论 -
使用prototype特性编程中的效率问题
前几天有位网友询问了我一个问题,主要是关于JavaScript的prototype特性的效率。因为作为一个如此强大并且灵活的东西,难免会让人觉得效率上可能有较大的损失。但是实际上prototype特性的效率怎么样呢?我们下面来详细说说这个问题。 之前我曾经写过两篇随笔介绍JavaScript语言的prototype特性,"JScript中的prototype(原型)属性研究(1)原创 2007-05-05 18:38:00 · 509 阅读 · 0 评论 -
修复附加继承法中模拟重载的一缺陷
在关于JavaScript继承的一系列讨论中,我详细的介绍和比较了四种继承方式,其中第四种"附加继承法"是一种对重载支持的最好的方法。并且也在我的实际开发中广泛的使用了,不过近来我发现在多层次的重载中,又出现了一个非常严重的bug。 我们使用原来重载一文中的那个grandpa、father & son的示例: html> head> title>Researh O原创 2007-05-05 18:37:00 · 372 阅读 · 0 评论 -
JavaScript对象也玩序列化和反序列化
前些天说过关于JavaScript的Literal Syntax问题,觉得挺有意思的,于是又研究了一下,能不能把对象再转化为Literal形式呢?就像我们平时说的序列化和反序列化啥的。当然可以了,因为JavaScript对象自身都提供了一个toString()方法,默认就是返回简单对象的Literal形式。 我们需要作的就是判断对象的具体类型,然后分别Serialize每种对象,再输原创 2007-05-05 18:36:00 · 439 阅读 · 0 评论 -
JavaScript中的Object到底是什么呢?!
前天有网友留言问我,Object是什么?由于这两天忙于重构那个TreeView控件去了,没有及时的回答,真是不好意思。今天抽空来看看JavaScript中的Object到底是什么东西呢?Object和函数Function到底是什么关系呢?说的不对的地方欢迎斧正。 虽然是私人留言,不过匿名转过来希望不会怪我,如有不妥请告知。 js的Object到底是什么? 刚开始我认为Obj原创 2007-05-05 18:35:00 · 796 阅读 · 0 评论 -
在JScript面向对象编程中使用重载(续)
上周在关于JavaScript面向对象编程的话题中,我讲过怎么在JavaScript面向对象编程中使用重载。虽然那个方法需要使用一个call函数来调用基类被重载的方法,看起来比较怪不说。不过更大的问题却是那个方法只支持两级继承的基类方法调用,使用起来真是如食鸡肋。 后来仔细研究了一下call函数的执行过程和原理,发现要实现"重载"一文中的任意级别类调用其直接基类方法是可以实现的。还原创 2007-05-05 18:35:00 · 409 阅读 · 0 评论 -
在JavaScript面向对象编程中使用重载
在此之前,我写了一个在JavaScript面向对象编程中使用继承的一系列文章。有很多的热心网友参与了讨论,指出了其中很多的问题并给予了我很多的好建议,非常感谢他们。同时在OOP中和继承关系非常紧密的就是重载这个东西,那么我介绍的继承方法支持重载吗? 这里我要说的重载(override),确实就是传统OO中的重载,而不是我们在JavaScript对象中对其同名属性或方法的重写(rew原创 2007-05-05 18:34:00 · 413 阅读 · 0 评论 -
JScript中的prototype(原型)属性研究(2)
上次的文章中我罗列了一下prototype属性在JScript中的各种用法,但是prototype这个东西却不是JScript创造出来的,JScript实际上是使用了我们设计模式中prototype pattern的一种衍生形式。下面我先简单的说一下prototype pattern,然后再来看到底JScript中的prototype是怎么回事?! Whats prototype原创 2007-05-05 18:33:00 · 423 阅读 · 0 评论 -
JScript中的prototype(原型)属性研究(1)
我们知道JScript中对象的prototype属性,是用来返回对象类型原型的引用的。我们使用prototype属性提供对象的类的一组基本功能。并且对象的新实例会"继承"赋予该对象原型的操作。但是这个prototype到底是怎么实现和被管理的呢? 对于对象的prototype属性的说明,JScript手册上如是说:所有 JScript 内部对象都有只读的 prototype 属性原创 2007-05-05 18:33:00 · 381 阅读 · 0 评论 -
在JavaScript面向对象编程中使用继承(5)
明天就要回老家去过年了,关于这个"在JavaScript面向对象编程中使用继承"的话题居然还没有说完。如果不完成,留下来一拖就拖到明年去了。所以还是抽空把它写完,今年的事情今年做,明年还有更重要的任务呢!~~ 下面继续来看茴香豆的"茴"字第四种写法。 这"茴"字的第四种写法,附加继承法,虽然是我自己杜撰出来的,而且还有一些前面三种继承法的影子,不过这个方法不可否认的,可以把前面说到继原创 2007-05-05 18:31:00 · 384 阅读 · 0 评论 -
在JavaScript面向对象编程中使用继承(4)
大家好像对JavaSript面向对象编程的继承不是很感兴趣哦,都没有什么讨论。也许是大家暂时都遇不到如此复杂的脚本开发solution,不过以后有问题也欢迎来讨论哦。毕竟经典的教程是不可能包括这些高级应用的,所以我总结的东西也就可能还有谬误。 今天说说脚本面向对象编程中的实例继承法,这个方法是经典论坛中,介绍JScript面向对象编程的文章中使用的继承方法。它是怎么工作的呢?原创 2007-05-05 18:30:00 · 432 阅读 · 0 评论 -
在JavaScript面向对象编程中使用继承(3)
上次讲了一下在使用JavaScript进行面向对象编程中,采用构造法来实现类继承的一些优缺点。下面我们接着把原型继承法的也有缺点也讲一讲,希望大家能积极提意见并探讨其中的一些问题。 原型(prototype)是JavaScript实现面向对象编程的一个基础,但它并不是唯一的构造类的方法,我们完全可以不使用prototype而实现类的编写(把属性和方法的附加全都写在构造函数里面就行原创 2007-05-05 18:30:00 · 424 阅读 · 0 评论 -
在JavaScript面向对象编程中使用继承(2)
昨天扔了一堆JavaScript类继承的代码,这些代码其实并不是所有的都能正常的执行。不是我不原意写出都能好好执行的继承类代码,而是这些方法本身就各自有自己的优缺点。下面我分别说它们的原理和使用时注意事项。 构造继承法的原理: 构造继承法关键代码是function ArrayList01()中的: this.base = CollectionBase; this.原创 2007-05-05 18:29:00 · 494 阅读 · 0 评论 -
理解并解决IE的内存泄漏方式[翻译4]
这段时间挺忙,不过还好终于圆满提交了产品的一个重要feature,Enterprise Overall Dashboard,有空再介绍一下。关于这个IE内存泄漏虽然是越来越郁闷,不过郁闷归郁闷,还是因该要有个善始善终,于是把最后一节翻完了放上来,这也好是个完整的系列。 貌似泄漏(Pseudo-Leaks) 在大多数时候,一些APIs的实际的行为和它们预期的行为可能会原创 2007-05-05 18:43:00 · 500 阅读 · 0 评论