成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

再記面向?qū)ο?

mochixuan / 2336人閱讀

摘要:實(shí)例對(duì)象與構(gòu)造函數(shù)的原型聯(lián)系是在創(chuàng)建實(shí)例時(shí)確定的,當(dāng)創(chuàng)建后更改原型對(duì)象并不改變之前創(chuàng)建的實(shí)例所關(guān)聯(lián)的原型對(duì)象,新創(chuàng)建的使用新的原型對(duì)象。

再記面向?qū)ο?/b> 函數(shù)和對(duì)象的聯(lián)系

先理一下函數(shù)的功能:

創(chuàng)建:可以通過字面量創(chuàng)建

可以賦值給變量、數(shù)組作為成員和其他的對(duì)象作為屬性

作為函數(shù)的參數(shù)

作為返回值

自身可以添加屬性

在上面列出的函數(shù)功能對(duì)象皆具有

詳細(xì)函數(shù)介紹 為什么介紹函數(shù)?

因?yàn)殚]包、面向?qū)ο蠖夹枰c其有關(guān),并且函數(shù)對(duì)于JavaScript的重要性則是無與倫比

函數(shù)創(chuàng)建的幾種方法:

函數(shù)定義: 函數(shù)聲明和函數(shù)表達(dá)式(回調(diào)函數(shù)與其關(guān)系)

箭頭函數(shù): es6增加(注意箭頭函數(shù)的this)

函數(shù)構(gòu)造函數(shù):new function ("a","b","return a+b");

生成器函數(shù):

函數(shù)聲明和函數(shù)表達(dá)式

函數(shù)聲明:

函數(shù)聲明用function 開頭,并且函數(shù)名為強(qiáng)制存在,參數(shù)名可選,函數(shù)體用大括號(hào){}包起來。

function square(number) {
    return number * number;
    }

注意函數(shù)名必須存在,這樣才可以被其他地方進(jìn)行調(diào)用。函數(shù)可以在函數(shù)里聲明 ,[閉包]()與此有關(guān)。

函數(shù)表達(dá)式:

函數(shù)表達(dá)式則是可以被用來作為參數(shù)、作為返回值??梢钥焖俚谋粍?chuàng)建使用。

var fn = function() {
  console.log("hello world")
}

fn()

function outPut (callback) {
  callback()
}

outPut(fn)

函數(shù)名不是必須的

箭頭函數(shù)

function getName (name) {
  return (function(j) {
   return j
  })(name)
}

var showName = getName("kangkang")

console.log(showName)

下面改寫為箭頭函數(shù)形式

function getName (name) {
  return (j=>j)(name)
}

var showName = getName("kangkang")

console.log(showName)

遵循 參數(shù)=>被返回的表達(dá)式的值、(p,b)=>p+b相當(dāng)于function(p,b){return p+b},也可以使用代碼塊進(jìn)行必要的操作,此時(shí)需要顯示表明return的值。

調(diào)用函數(shù):

函數(shù)的調(diào)用,定義一個(gè)函數(shù)并不會(huì)執(zhí)行它,需要調(diào)用。在調(diào)用時(shí),你需要給定可選的參數(shù),如果參數(shù)為空則無需給定。函數(shù)聲明的提升可以讓函數(shù)不在頂層被聲明。

一個(gè)需要注意的地方 函數(shù)提升僅適用于函數(shù)聲明,而不適用于函數(shù)表達(dá)式。

具體函數(shù)的調(diào)用在this上的改變令人捉摸不透,我也寫了篇筆記 [this何時(shí)為何值?]()待添加

原型鏈:

每個(gè)對(duì)象(函數(shù))具有一個(gè)原型屬性,指向可以被實(shí)例共享的屬性和方法。而原型鏈在尋找某個(gè)屬性時(shí)體現(xiàn)的比較清楚:

function one () {
  this.value = 1
}
one.prototype.output = function() {
  console.log(this.value)
}

function two () {
  this.value = 2
}

function three () {
  this.value = 3
}

two.prototype = Object.create(one.prototype)
three.prototype = Object.create(two.prototype)

var one1 = new one()
var two1 = new two()
var three1 = new three()

three1.output()
// 對(duì)于three1來說并沒有output這個(gè)方法,就是通過原型鏈這個(gè)鏈進(jìn)行一層一層尋找的
重寫對(duì)象原型引起的問題

在構(gòu)造函數(shù)創(chuàng)建新的實(shí)例后依然可以添加新的原型屬性和方法并且可以被訪問到,但是如果重寫整個(gè)原型對(duì)象的話,就需要注意了。實(shí)例對(duì)象與構(gòu)造函數(shù)的原型聯(lián)系是在創(chuàng)建實(shí)例時(shí)確定的,當(dāng)創(chuàng)建后更改原型對(duì)象并不改變之前創(chuàng)建的實(shí)例所關(guān)聯(lián)的原型對(duì)象,新創(chuàng)建的使用新的原型對(duì)象。

constructor屬性指向創(chuàng)建實(shí)例的函數(shù)

個(gè)人學(xué)習(xí)備忘,如有謬誤,歡迎指正。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/94391.html

相關(guān)文章

  • 再記一次nginx的報(bào)錯(cuò) : (

    2016/04/29 02:36:36 [error] 12717#0: *122075 FastCGI sent in stderr: Primary script unknown while reading response header from upstream, client: 127.0.0.1, server: xxxxxxxx, request: GET / HTTP/1.1, u...

    MarvinZhang 評(píng)論0 收藏0
  • 再記一次nginx的報(bào)錯(cuò) : (

    2016/04/29 02:36:36 [error] 12717#0: *122075 FastCGI sent in stderr: Primary script unknown while reading response header from upstream, client: 127.0.0.1, server: xxxxxxxx, request: GET / HTTP/1.1, u...

    phodal 評(píng)論0 收藏0
  • 【PHP】PHPExcel類 excel常用操作小結(jié)

    摘要:使用好久了,好像今天才想起來要記一篇博客呢。之前一直用的框架,后來做接口的時(shí)候打算換成不料機(jī)緣巧合之下又結(jié)識(shí)了,于是乎決然的站到了的大營之下。今天小記一下這個(gè)類庫的常用操作。首先貼上地址,直接去下載最新版好了。 PHP使用好久了,好像今天才想起來要記一篇博客呢。之前一直用的 ci 框架,后來做接口的時(shí)候打算換成 tp5, 不料機(jī)緣巧合之下又結(jié)識(shí)了 node,于是乎決然的站到了 js 的...

    suosuopuo 評(píng)論0 收藏0
  • 給準(zhǔn)備著手寫博客的小白的一些實(shí)用建議

    摘要:針對(duì)一些想寫博客提升能力,但是很迷茫不知道怎么開始的同學(xué),我會(huì)盡我所能給出一些建議。它允許人們使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成有效的或者文檔。 目錄 ...

    ad6623 評(píng)論0 收藏0
  • js謎之正則表達(dá)式

    摘要:用正則表達(dá)式語言創(chuàng)建的。匹配非數(shù)字的字符使用元字符元字符在正則表達(dá)式中有特殊含義的字符。正則表達(dá)式默認(rèn)是區(qū)別大小寫的。正則表達(dá)式的字符串表示。若是一個(gè)正則表達(dá)式,若有標(biāo)志則替換所有匹配之處,若沒有則只替換第一個(gè)匹配之處。 前言 好久之前就說要寫一篇正則表達(dá)式的文章,正則表達(dá)式總是記了又忘,忘了再記,記了再忘,卒。言歸正傳,今天終于要研究一下這個(gè)謎一樣的正則表達(dá)式了。其實(shí)正則表達(dá)式并不難...

    wendux 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

mochixuan

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<