Js基礎(chǔ)知識學(xué)習(xí)-----from 米升亮

由于這兩周在開發(fā)H5推廣模板,所以結(jié)合實戰(zhàn)在學(xué)習(xí)js基礎(chǔ)。由于js知識點比較零碎,故總結(jié)一些零碎的知識點。

主要學(xué)習(xí)內(nèi)容:

  1. ECMAScript 基礎(chǔ)
  2. js對象基礎(chǔ)
  3. 繼承

ECMAScript 基礎(chǔ)

語法:

  • 區(qū)分大小寫
  • 變量弱類型
  • 每行結(jié)尾;可有可無
  • 注釋和java和PHP相同

ECMAScript五種原始類型

  1. Undefined
    變量未初始化時,該變量的默認(rèn)值為Undefined;

  2. Null
    Undefined是從Null中派生出來的; null == undefined //true

  3. Boolean
    只要是對象,Boolean返回的就是true。0和null值默認(rèn)為false

  4. Number
    toString()方法可分為默認(rèn)模式和基模式;
    如:toString(16);

  5. String
    使用 typeof var 可得var的變量類型
    強制類型轉(zhuǎn)換:在解決null這個特殊值時,比較有趣。
    var s1 = String(null); //"null"
    var oNull = null;
    var s2 = oNull.toString(); //won't work,causes an error

運算符

js中的浮點數(shù)乘法運算都是先擴大為整數(shù)再運算,而后除以相應(yīng)的倍數(shù),故在乘法的結(jié)果中也會出現(xiàn)無限循環(huán)小數(shù)。保險做法為先將運算數(shù)擴大百倍再將結(jié)果縮小百倍。

Function類

無重載(利用arguments可實現(xiàn)重載機制,arguments為參數(shù)可變數(shù)組)
函數(shù)也可作為參數(shù)傳遞

js對象基礎(chǔ)

對象的廢除

  1. 當(dāng)再沒有對對象的引用時,該對象被廢除。
  2. 當(dāng)強制將對象的引用設(shè)為null值時,可以強制性廢除對象。

對象類型

  • 本地對象(獨立于宿主環(huán)境的ECMAScript實現(xiàn)提供的對象)

  • Array:
    join()實現(xiàn)鏈接數(shù)組元素
    push() :數(shù)組尾部增加一個元素,可傳遞多個元素,但總是習(xí)慣與傳遞一個參數(shù)且使用多次。
    pop():數(shù)組尾部刪除一個元素。
    shift():刪除數(shù)組中的第一個位置元素。
    unshift:增加一個元素到第一個位置。

  • Date:存在Date類,且有多種表現(xiàn)格式。

  • 內(nèi)置對象(由ECMAScript實現(xiàn)提供的,獨立于宿主環(huán)境的所有對象,在ECMAScript程序開始執(zhí)行時開始出現(xiàn);每個內(nèi)置對象都是本地對象;)

    • Global:根本不存在。
  • 默認(rèn)的方法為global對象的方法,如isNaN();
    encodeURI()
    encodeURIComponent():想較于encodeURI,將特殊字符全部轉(zhuǎn)化。
    decodeURI()
    decodeURIComponent():輸出上面兩種URI編碼。
    escape()
    unescape():盡量避免使用,只能對ASCII正確編碼。不能對Unicode全部編碼。
    eval():解釋js的程序,慎重使用,很可能代碼注入。

  • Math:提供各種處理函數(shù)。

  • 宿主對象

  • 定義類或者函數(shù):
    工廠方式:每次創(chuàng)建一個對象,直接返回對象。
    構(gòu)造函數(shù)方式:使用this。
    原型方式:
    混合的構(gòu)造函數(shù)/原型方式:構(gòu)造變量,原型初始化函數(shù)。

  • 修改對象:
    Object.prototype.function();
    Object.prototype.var;

  • 繼承

  • 對象冒充
    call(this,var a1,var a2);
    apply(this,new Array("",""));

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容