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

首頁 > 語言 > JavaScript > 正文

JS中的prototype與面向對象的實例講解

2024-05-06 15:47:33
字體:
來源:轉載
供稿:網友
JS中的prototype與面向對象的實例講解,需要的朋友可以參考一下

復制代碼 代碼如下:


<script language="javascript" type="text/javascript">
//(1)把一個方法變成一個對象,為對象創建方法和屬性
var Name = function () {
//通過prototype給一個對象創建方法
Name.prototype.Add = function (num, title) {
}
//也可以直接用this加方法名為對象創建方法和上面的等價
this.Way = function (str) {
}
//為對象添加屬性值
Name.prototype.xing = "123";

//定義靜態屬性和方法
Name.shi = "static";
Name.Addd = function (num, title) {
}
//靜態定義的局部屬性和方法只能在靜態的類型里面用
alert(Name.shi);
Name.Addd(1, 2);

}
//方法也可以這樣聲明
function Name1() {
Name1.prototype.add = function () { }
this.way = function () { }
Name1.prototype.shu = "other";
}
//靜態定義的全局屬性和方法通用
Name.sha = "static";
Name.Addd2 = function () {
}
alert(Name.sha); //調用靜態屬性
Name.Addd2(); //調用靜態方法
var name = new Name();
name.Add(); //對象調用方法
name.Way();
alert(name.xing); //對象調用屬性
/*靜態的全局變量,在方法外可以調用;靜態的局部變量和方法僅限于方法內使用;實例對象不能調用靜態的方法 */
/*實例對象不能使用prototype; */


//(2)Javascript面向對象 繼承
//父類
function Class() {
this.name = "name";
this.method = function () {
alert("method");
}
}
//子類
function Class1() {
this.name1 = "name1";
this.method1 = function () {
alert("method1");
}
}
//子類繼承父類
Class1.prototype = new Class();
var obj = new Class1();
alert(obj.name);
alert(obj.name1);
obj.method();
obj.method1();
/****** 子類繼承父類的語法,子類.prototype=new 父類(); *****/
//(3)子類重寫父類
//子類
function Class2() {
this.name2 = "name2";
this.method2 = function () {
alert("method2");
}
}
Class2.prototype = new Class(); //繼承
Class2.prototype.name = "updateName"; //重寫父類的屬性
Class2.prototype.method = function () {//重寫父類的方法
alert("UpdateMethod");
}
var obj2 = new Class2();
alert(obj2.name); //顯示updateName
obj2.method(); //顯示UpdateMethod
alert(obj2.name2);
obj2.method2();

//(4){}里面的為對象
var arr = new Array();
arr.push({ "name": "1", "age": 12, funA: function () { } });
arr.push({ "name": "2", "age": 13 });
arr.push({ "name": "3", "age": 14 });
for (var i = 0; i < arr.length; i++) {
alert(arr[i].name);
alert(arr[i].age);
alert(arr[i].funA());
}
/****一個對象也可以這么定義***/
var newObject = {
"name": "Jim",
"sex": "Man",
Way: function () { }
};
</script>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 临朐县| 沈阳市| 乌恰县| 定西市| 汉中市| 饶河县| 都兰县| 阿拉善左旗| 维西| 仁化县| 曲阳县| 浦城县| 三江| 五寨县| 棋牌| 买车| 焦作市| 清丰县| 石城县| 海淀区| 汾西县| 达尔| 崇仁县| 玉田县| 江山市| 永新县| 磐石市| 华坪县| 延川县| 太和县| 宜都市| 手游| 宾川县| 丁青县| 江北区| 玉龙| 赣州市| 凌源市| 平罗县| 长宁县| 浦县|