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

資訊專欄INFORMATION COLUMN

js函數(shù)學(xué)習(xí)

JasinYip / 563人閱讀

摘要:函數(shù)聲明靜態(tài)函數(shù)函數(shù)聲明有個特征就是函數(shù)可以函數(shù)聲明提前函數(shù)表達(dá)式這種方式命名,沒有函數(shù)聲明提前,這個方式也是自己比較喜歡用的方式。

函數(shù)聲明(靜態(tài)函數(shù))

函數(shù)聲明有個特征就是函數(shù)可以函數(shù)聲明提前

hello();
function hello(){
console.log("hello js");
}
函數(shù)表達(dá)式(Function expressions)
var hello2 = function(){
 console.log("hello2 js");
}
hello2();

這種方式命名,沒有函數(shù)聲明提前,這個方式也是自己比較喜歡用的方式。

匿名函數(shù)( anonymous)
(function(){
    console.log("message");
})()

也可以直接傳入變量,jQuery源碼用的比較的多,用匿名函數(shù)的好處就是可以減少命名的沖突,省的為了只執(zhí)行一次的函數(shù)你還要去命名

(function(e){
    console.log(e);
})(2)

自動執(zhí)行的其他的寫法

var auto = (function(){
     console.log("auto message");
})() 

var auto = (function(){
    console.log("auto message2");
}())
回調(diào)函數(shù)(callback)

就是把函數(shù)當(dāng)做變量,這個算是js中比較特別的地方,nodejs的異步回調(diào)的大體就是那樣

function person(callback,name,age){
    callback(name,age);
}
function output(name,age){
    console.log(name+":"+age);
}
new person(output,"zs",18);
遞歸函數(shù)

關(guān)于遞歸,這個平時不敢去太多的應(yīng)用,當(dāng)時學(xué)習(xí)java的時候就很轉(zhuǎn),也就不為難自己了。簡單的說就是自己調(diào)用自己:

function add(n){
    if(n<=1){
        return 1;
    }else{
        return n+add(n-1)
    }
}
// var i= add(4);
console.log(add(4));
構(gòu)造函數(shù)

構(gòu)造函數(shù)首字母大寫

this用法,指向本身,這個比較復(fù)雜,以后總結(jié)好了,弄明白了再細(xì)說

閉包問題也是比較頭痛的問題,留在以后。會造成內(nèi)存消耗

構(gòu)造函數(shù)的三部曲:

構(gòu)造方法

定義屬性

原型法定義函數(shù),這樣比較的節(jié)省內(nèi)存

函數(shù)的繼承,call,apply(用在傳遞數(shù)組)

函數(shù)的繼承:

function Person(name,age){
    this.name=name;
    this.age=age;
}

Person.prototype.out=function(){
    var self=this;
    console.log(this.name+":"+this.age);
}

function Student(name,age,id){
    // Person.call(this,name,age);
    Person.apply(this,[name,age]);//或是用apply都行
    this.id=id;
}
Student.prototype.output=function(){
    var self=this;
    console.log(this.name+":"+this.age+";"+this.id);
}

new Person("lh",18).out();
new Student("KK",18,"XUESHENG").output();

函數(shù)的多態(tài):

函數(shù)的重載:

主要是通過argument.length分別調(diào)用的,沒有怎么用過

function f(x){}
function f(x,y){}
function f(x,y,z){}
總結(jié)最優(yōu)的命名函數(shù)方法:

用構(gòu)造方法生成成員變量,用原型法生成成員方法,減少內(nèi)存的消耗

function Person(name,age){
    this.name=name;
    this.age=age;
    this.say();
    // 這樣也行(構(gòu)造方法分配成員方法),比較喜歡原型法構(gòu)造函數(shù)
    this.say=function(){
        console.log(name+age);
    }
}
Person.prototype.say=function(){
    console.log(name+age);
}

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

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

相關(guān)文章

  • 【前端語言學(xué)習(xí)學(xué)習(xí)minipack源碼,了解打包工具的工作原理

    摘要:作者王聰學(xué)習(xí)目標(biāo)本質(zhì)上,是一個現(xiàn)代應(yīng)用程序的靜態(tài)模塊打包器。為此,我們檢查中的每個導(dǎo)入聲明。將導(dǎo)入的值推送到依賴項數(shù)組中。為此,定義了一個只包含入口模塊的數(shù)組。當(dāng)隊列為空時,此循環(huán)將終止。 作者:王聰 學(xué)習(xí)目標(biāo) 本質(zhì)上,webpack 是一個現(xiàn)代 JavaScript 應(yīng)用程序的靜態(tài)模塊打包器(module bundler)。當(dāng) webpack 處理應(yīng)用程序時,它會遞歸地構(gòu)建一個依賴關(guān)...

    shery 評論0 收藏0
  • 【前端語言學(xué)習(xí)學(xué)習(xí)minipack源碼,了解打包工具的工作原理

    摘要:作者王聰學(xué)習(xí)目標(biāo)本質(zhì)上,是一個現(xiàn)代應(yīng)用程序的靜態(tài)模塊打包器。為此,我們檢查中的每個導(dǎo)入聲明。將導(dǎo)入的值推送到依賴項數(shù)組中。為此,定義了一個只包含入口模塊的數(shù)組。當(dāng)隊列為空時,此循環(huán)將終止。 作者:王聰 學(xué)習(xí)目標(biāo) 本質(zhì)上,webpack 是一個現(xiàn)代 JavaScript 應(yīng)用程序的靜態(tài)模塊打包器(module bundler)。當(dāng) webpack 處理應(yīng)用程序時,它會遞歸地構(gòu)建一個依賴關(guān)...

    toddmark 評論0 收藏0
  • 初學(xué)者學(xué)習(xí)JAVASCRIPT很吃力怎么辦?到底該如何學(xué)習(xí)JS

    摘要:給初學(xué)者的印象總是那么的雜而亂,相信很多初學(xué)者都在找輕松學(xué)習(xí)的途徑。通常學(xué)了很久的基礎(chǔ)之后,變量函數(shù)對象你也都略知一二,但一到公司開發(fā)項目的時候,卻又難以下手。 Js給初學(xué)者的印象總是那么的雜而亂,相信很多初學(xué)者都在找輕松學(xué)習(xí)Js的途徑。在這里給大家總結(jié)一些學(xué)習(xí)Js的經(jīng)驗,希望能給后來的學(xué)習(xí)者探索出一條輕松學(xué)習(xí)Js之路。Js給人那種感覺的原因多半是因為它如下的特點:A:本身知識很抽象、...

    WrBug 評論0 收藏0
  • JS框架 - 收藏集 - 掘金

    摘要:現(xiàn)在回過頭總結(jié),才又進(jìn)一步的揭開了閉包的一層后臺管理系統(tǒng)解決方案前端掘金基于系列的后臺管理系統(tǒng)解決方案。什么是繼承大多數(shù)人使用繼承不外乎是為了獲得基于的單頁應(yīng)用項目模板前端掘金小貼士本項目已升級至。 關(guān)于js、jq零碎知識點 - 掘金寫在前面: 本文都是我目前學(xué)到的一些比較零碎的知識點,也是相對偏一點的知識,這是第二篇。前后可能沒有太大的相關(guān)性,需要的朋友可以過來參考下,喜歡的可以點個...

    wenyiweb 評論0 收藏0
  • Backbone.js學(xué)習(xí)筆記(一)

    摘要:它通過數(shù)據(jù)模型進(jìn)行鍵值綁定及事件處理,通過模型集合器提供一套豐富的用于枚舉功能,通過視圖來進(jìn)行事件處理及與現(xiàn)有的通過接口進(jìn)行交互。 本人兼職前端付費技術(shù)顧問,如需幫助請加本人微信hawx1993或QQ345823102,非誠勿擾 1.為初學(xué)前端而不知道怎么做項目的你指導(dǎo) 2.指導(dǎo)并扎實你的JavaScript基礎(chǔ) 3.幫你準(zhǔn)備面試并提供相關(guān)指導(dǎo)性意見 4.為你的前端之路提供極具建設(shè)性的...

    FrancisSoung 評論0 收藏0
  • JavaScript知識架構(gòu)學(xué)習(xí)路徑(一)- 變量篇

    摘要:在此,我們首先根據(jù)變量的作用域,將變量劃分為三級,具體是全局變量局部變量和參數(shù)變量。 【摘要】本文是專為JavaScript入門者而總結(jié)的,總體上將JavaScript的基礎(chǔ)部分分成了九大塊,分別是變量、運算符、數(shù)組、流程控制結(jié)構(gòu)、字符串函數(shù)、函數(shù)基礎(chǔ)、DOM操作基礎(chǔ)、文檔對象模型DOM和正則表達(dá)式。 【關(guān)鍵字】變量、運算符、數(shù)組、流程控制結(jié)構(gòu)、函數(shù)、DOM、正則表達(dá)式。 本篇文章的主...

    toddmark 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<