javascript 對象 與 prototype 原型用法實例分析
本文實例講述了javascript 對象 與 prototype 原型用法。分享給大家供大家參考,具體如下:
我們做程序開發(fā)的,經(jīng)常面對的就是一個一個對象。那么在javascript中我們怎么去創(chuàng)建一個類以及一個對象呢?
<script type="text/javascript">
//創(chuàng)建一個Test對象
function Test(){
}
var test = new Test();
//創(chuàng)建一個對象
var obj = new Object();
//json 對象
var json1 = {};
</script>
類都有自己的屬性和方法,我們怎么去定義
<script type="text/javascript">
function Test(){
this.name = "譚勇";
this.age = 22;
this.getName = function(){
return this.name;
}
this.getAge = function(){
return this.age;
}
}
var test = new Test();
console.log(test); //查看一下日志
var obj = new Object();
obj.name = "譚勇";
obj.age = "22";
obj.getName = function(){
return this.name;
};
obj.getAge = function(){
return this.age;
};
console.log(obj); //查看下日志
var json1 = {};
json1["name"] = "譚勇";
json1["age"] = 22;
json1["getName"] = function(){
return this.name;
}
json1["getAge"] = function(){
return this.age;
}
console.log(json1); //查看下日志
</script>
構(gòu)造方法
<script type="text/javascript">
function Test2(name,age){
this.name = name;
this.age = age;
this.getName = function(){
return this.name;
}
this.getAge = function(){
return this.age;
}
}
var test2 = new Test2("譚勇",22);
console.log(test2); //查看下日志
</script>
行為有形參
<script type="text/javascript">
function Test3(){
this.demo = function(param_str){
return param_str;
}
}
var test3 = new Test3();
console.log(test3.demo("aaaaaaaaaaaaaaaaaaaa"));
</script>
繼承
<script type="text/javascript">
function parent(){
this.getStr = function(){
return "test str";
}
}
function son(){}
son.prototype = new parent();
var sona = new son();
console.log(sona.getStr());
</script>
拷貝繼承
<script type="text/javascript">
function extend(Child, Parent) {
var p = Parent.prototype;
var c = Child.prototype;
for (var i in p) {
c[i] = p[i];
}
}
function parent(){
}
parent.prototype.getStr=function(){
return "test str";
}
function son(){
}
extend(son,parent);
var sona = new son();
console.log(sona.getStr());
</script>
原型
原型是一個對象,其他對象可以通過它實現(xiàn)屬性繼承。
任何一個對象都可以成為原型么?
是
哪些對象有原型
所有的對象在默認(rèn)的情況下都有一個原型,因為原型本身也是對象,所以每個原型自身又有一個原型(只有一種例外,默認(rèn)的對象原型在原型鏈的頂端。)
<script type="text/javacript">
var str = "譚勇";
String.prototype.getName = function(){
var strs = "";
for(var i=0;i<this.length;i++){
strs += this[i];
}
return strs;
}
console.log(str.getName());
console.log(str);
console.log(str[0]);
</script>
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運(yùn)行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運(yùn)行效果。
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
相關(guān)文章
js 復(fù)制功能 支持 for IE/FireFox/mozilla/ns
js 復(fù)制功能 支持 for IE/FireFox/mozilla/ns...2007-11-11
微信小程序?qū)崿F(xiàn)的一鍵連接wifi功能示例
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)的一鍵連接wifi功能,結(jié)合實例形式分析了微信小程序操作WiFi連接的模塊初始化、配置、連接等相關(guān)操作技巧,需要的朋友可以參考下2019-04-04

