<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ExtJs整理</title>
<link rel="stylesheet" type="text/css" href="ExtJs/resources/css/ext-all.css">
<script type="text/javascript" src="ExtJs/adapter/ext-base.js"></script>
<script type="text/javascript" src="ExtJs/ext-all.js"></script>
<script type="text/javascript" src="ExtJs/src/locale/ext-lang-zh_CN.js"></script>
</head>
<script type="text/javascript">
Ext.onReady(function(){
Barcelona = function(){
this.member = 11;
}
Barcelona.prototype = {
say:function(){
alert("我是巴塞罗那,我有"+this.member+"名世界球员,横少欧洲是我的目标!");
}
};
var barc = new Barcelona();
alert(barc.member);
barc.say();
});
</script>
<body>
</body>
</html>
运行结果:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ExtJs整理</title>
<link rel="stylesheet" type="text/css" href="ExtJs/resources/css/ext-all.css">
<script type="text/javascript" src="ExtJs/adapter/ext-base.js"></script>
<script type="text/javascript" src="ExtJs/ext-all.js"></script>
<script type="text/javascript" src="ExtJs/src/locale/ext-lang-zh_CN.js"></script>
</head>
<script type="text/javascript">
Ext.onReady(function(){
Member = function(name, sex) {
this.name = name;
this.sex = sex;
}
//调用
var member = new Member("梅西", "男");
alert("姓名:"+member.name+"\r\n性别:"+member.sex);
});
//json对象作为构造函数
Ext.onReady(function(){
Member = function(config) {
this.name = config.name;
this.sex = config.sex;
}
//调用
var member = new Member({name:"梅西", sex:"男"});
alert("姓名:"+member.name+"\r\n性别:"+member.sex);
});
Ext.onReady(function(){
Member = function(config) {
Ext.apply(this, config);
}
//调用
var member = new Member({name:"梅西", sex:"男"});
alert("姓名:"+member.name+"\r\n性别:"+member.sex);
});
</script>
<body>
</body>
</html>
三种方法运行结果都一样
Ext.apply()和Ext.applyIf()
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ExtJs整理</title>
<link rel="stylesheet" type="text/css" href="ExtJs/resources/css/ext-all.css">
<script type="text/javascript" src="ExtJs/adapter/ext-base.js"></script>
<script type="text/javascript" src="ExtJs/ext-all.js"></script>
<script type="text/javascript" src="ExtJs/src/locale/ext-lang-zh_CN.js"></script>
</head>
<script type="text/javascript">
Ext.onReady(function(){
Member = function(config) {
this.name = "卡马乔";
this.sex = "男";
Ext.apply(this, config);//梅西干掉卡马乔
}
//调用
var member = new Member({name:"梅西", sex:"男", ctime:new Date()});
alert("姓名:"+member.name+"\r\n性别:"+member.sex+"\r\n时间:"+member.ctime);
});
Ext.onReady(function(){
Member = function(config) {
this.name = "卡马乔";
this.sex = "男";
Ext.applyIf(this, config);//梅西没有干掉卡马乔
}
//调用
var member = new Member({name:"梅西", sex:"男", ctime:new Date()});
alert("姓名:"+member.name+"\r\n性别:"+member.sex+"\r\n时间:"+member.ctime);
});
</script>
<body>
</body>
</html>
第一种方法运行结果:
第二种方法运行结果: