国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

prototype 學習筆記整理

2019-11-21 01:16:04
字體:
來源:轉載
供稿:網(wǎng)友
var Class = {
create: function() {
return function() {
this.initialize.apply(this, arguments);
}
}
}
定義了一個class函數(shù)作為創(chuàng)建類的模版或者說是原型
使用方法
復制代碼 代碼如下:

<html>
<title>Test Class.create()</title>
<head>
<script language="JavaScript" type="text/javascript" src="prototype.js"></script>
<script>
var llinzzi= Class.create();
llinzzi.prototype = {
initialize:function(){
document.writeln('This is create when initialize');
},
fuv:function(){document.writeln('This is inline method');}
}
var linChild = new llinzzi();
</script>
</head>
<body>
<script>
//window.onload(linChild);
window.onload(linChild.fuv());
</script>;
</body>
</html>

////
This is create when initialize This is inline method ;
/////
就是當采用了prototype的Class.create();方法創(chuàng)建對象的時候,initialize作為特殊的方法,在創(chuàng)建實例的時候被執(zhí)行,用以初始化.
繼承
Object.extend = function(destination, source) {
for (var property in source) {
destination[property] = source[property];
}
return destination;
}
此方法將拷貝所有的source object的屬性和方法到destination object.
Prototype 對Object類進行的擴展主要通過一個靜態(tài)函數(shù)Object.extend (destination, source)實現(xiàn)了JavaScript 中的繼承。 從語義的角度, Object.extend (destination, source)方法有些不和邏輯, 因為它事實上僅僅實現(xiàn)了從源對象到目標對象的全息拷貝。不過你也可以這樣認為:由于目標對象擁有了所有源對象所擁有的特性, 所以看上去就像目標對象繼承了源對象(并加以擴展)一樣.
// make a (shallow) copy of obj1
var obj1 = {
method : "post",
args : ""
};
var obj2 = Object.extend({}, obj1);
使用 例子:
復制代碼 代碼如下:

<html>
<title>Test Object.extend</title>
<head>
<script language="JavaScript" type="text/javascript" src="prototype.js"></script>
<script>
function log(message) {
document.writeln(" >>>>>: " +message);
}
var obj1= {
method : "post",
args : ""
};
var obj2 = Object.extend({}, obj1);
log(obj2.method);
log(obj1 == obj2);
log(obj1.method);
log(obj2 == obj1);
</script>
</head>
<body>
</body>
</html>

// merges in the given options object to the default options object
Object.extend(options, {
args : "data=454",
onComplete : function() { alert("done!"); }
});
options.method // "post"
options.args // "ata=454"
options.onComplete // function() { alert("done!"); }
使用例子:
復制代碼 代碼如下:

<html>
<title>Test Object.extend</title>
<head>
<script language="JavaScript" type="text/javascript" src="prototype.js"></script>
<script>
function log(message) {
document.writeln(" >>>>>: " +message);
}
var options= {
method : "post",
args : ""
};
Object.extend(options, {
args : "data=454",
onComplete : function() { alert("done!");}
});
options.method // "post"
options.args // "ata=454"
options.onComplete // function() { alert("done!"); }
log(options.method);
log(options.args);
log(options.onComplete);
</script>
</head>
<body>
</body>
</html>
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 重庆市| 资中县| 山东省| 历史| 清流县| 鸡西市| 山阳县| 乌拉特中旗| 吉隆县| 呼伦贝尔市| 深州市| 东港市| 宝清县| 黄浦区| 军事| 深水埗区| 古丈县| 同江市| 革吉县| 嘉荫县| 黑水县| 合江县| 灵璧县| 仁化县| 天柱县| 双柏县| 保亭| 铁岭县| 保亭| 那坡县| 萨迦县| 乌恰县| 油尖旺区| 类乌齐县| 无棣县| 隆化县| 临清市| 枝江市| 凤冈县| 民县| 永仁县|