本文實(shí)例總結(jié)了JavaScript創(chuàng)建對(duì)象的方式。分享給大家供大家參考,具體如下:
潛意識(shí)里,JavaScript不能算是面向?qū)ο蟮恼Z(yǔ)言,要算也只能說(shuō)是趨向面向?qū)ο蟮囊环N語(yǔ)言,至少它不能很好的吻合面向?qū)ο笞罨镜娜筇匦?繼承、封裝、多態(tài)),當(dāng)然有很多人就認(rèn)為JavaScript是面向?qū)ο笳Z(yǔ)言,好像也說(shuō)得沒(méi)錯(cuò),因?yàn)槊嫦驅(qū)ο笠材茉贘avaScript中實(shí)現(xiàn),比如說(shuō)繼承、封裝吧也都可以在JavaScript中實(shí)現(xiàn),但是實(shí)現(xiàn)方便嗎?所以我覺(jué)得很疑惑。看到網(wǎng)上有一網(wǎng)友評(píng)價(jià)的很好,"面向?qū)ο笾皇且环N思想,語(yǔ)言只能說(shuō)是否很好的支持面向?qū)ο蟮奶匦浴?quot;如果對(duì)面向?qū)ο笥幸欢ǖ恼J(rèn)識(shí),用C也能寫出面向?qū)ο蟮某绦颍琷avascript也是如此。所以說(shuō)不能斷言說(shuō)JavaScript是面向?qū)ο笳Z(yǔ)言, 呵呵,自認(rèn)為是菜鳥,不敢妄自斷言,還是看看代碼:
1. 利用json創(chuàng)建對(duì)象
var company = {};company.name= '華為';company.address = '北京';company.produce = function(message){ alert(message);}
2.使用JavaScript中的Object類型
company= new Object();company.name= '淘寶';company.address = '杭州';company.produce= function(message){ alert(message);}
3.通過(guò)創(chuàng)建函數(shù)來(lái)生成對(duì)象
company = function(){ this.name = '新浪'; this.address = '北京'; this.produce = function(message) { alert(message); }}
4.利用瀏覽器window對(duì)象
window.name = '騰訊';window.address = '北京';window.produce = function(message){ alert(message);}
擴(kuò)展:
1.對(duì)象復(fù)制
emptyObject = new Object();company.apply = function(o, c,){ if(o && c && typeof c == 'object') { for(var p in c) { o[p] = c[p]; } } return o;};emptyObject = Ext.apply(emptyObject,company);
2.對(duì)象復(fù)制(函數(shù)方式)
var copyOO = new Function();copyOO.prototype = company;var newcopyOO = new copyOO();
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。