面向?qū)ο蟮娜筇匦?/h3>
01 封裝:提高代碼的復(fù)用性,降低代碼的冗余度,信息隱藏,把方法內(nèi)部的實現(xiàn)隱藏餐抢,不需要關(guān)注內(nèi)部實現(xiàn)的細(xì)節(jié)现使。
使用對象來封裝函數(shù)和變量
代碼示例
//01 封裝的簡單說明
//001 觀察以下雜亂無關(guān)的語句,它們僅僅只是一堆無意義的全局變量
var name = "乘風(fēng)波浪";
var actors = ["彭于晏","趙麗穎","鄧超","李榮浩"];
var showTime = "2017-1-28 - 2017-2-28";
var director = "韓寒";
var type = "喜劇";
var play = function () {
//播放......
};
//002 把上面的變量封裝到對象中(更具體&有意義)
var film = {
name:"乘風(fēng)破浪",
actors:["彭于晏","趙麗穎","鄧超","李榮浩"],
showTime:"2017-1-28 - 2017-2-28",
director:"韓寒",
type:"喜劇",
play:function () {
//播放......
}
}
02 繼承:在編程語言中,繼承指的是子類獲取父類的屬性和方法的行為弹澎;在js中朴下,某個對象(子對象)獲得另外一個對象(父對象)的屬性和方法的行為
//繼承的簡單示例
//001 創(chuàng)建一個空的對象
var nullObj = {};
// 上面的對象film擁有了很多的屬性和方法
//002 設(shè)法讓nullObj擁有film中所有的屬性和方法
//方法一:自己重新寫一遍
//方法二:通過某種方式來獲得,比如遍歷該對象,然后完成賦值
for(var k in film)
{
nullObj[k] = film[k];
}
for(var k in nullObj)
{
console.log(nullObj[k]);
}
03 多態(tài):
- 多種形態(tài),對于相同的操作(指令)苦蒿,不同的對象表現(xiàn)出不同的行為殴胧。
- 隱藏不同,多用于強類型語言佩迟,而js屬于弱類型团滥,在這方面表現(xiàn)不多。