JS學(xué)習(xí)概要

toString方法和string方法到區(qū)別

toString不能轉(zhuǎn)換undefined和null 其他轉(zhuǎn)換和String類似 但是用法不一樣 toString方法是被各個類型所擁有的,可以讓類型值直接調(diào)用,但是String方法是直接把要轉(zhuǎn)換的值
傳入String中

斷路原理

// 這種類似的題目,一般不考慮整體返回值,而是看前一句條件是否滿足,然后看后一句代碼是否執(zhí)行
    var a = 2; var b = 3;
    (a < b)&&(a = 5);
    console.log(a);//5

    var a = 6; var b = 3;
    (a < b)&&(a = 5);
    console.log(a);//6


    var a = 2; var b = 3;
    (a < b)||(a = 5);//2
    console.log(a);

    var a = 6; var b = 3;
    (a < b)||(a = 5);
    console.log(a);//5

字符串轉(zhuǎn)數(shù)字

三種方法

  1. 一元運算
  2. Numeber方法
  3. 減0
  4. parseInt - parseFloat

括號的作用

小括號的作用:
  1. 提升優(yōu)先級
  2. 函數(shù)調(diào)用
中括號的作用

1.定義數(shù)組

大括號的作用
  1. 定義對象
  2. 書寫代碼塊

三元運算符

// a ?b :c
    // 先判斷a  如果a返回true  那么就執(zhí)行b  否則就執(zhí)行c
    var num = true ? 3 : 2;
    console.log(num);

    var a = 2;
    var b = 3;
    // 如果a大于b  則彈出你好  否則 彈出滾蛋
    // 方法1
    if (a > b){
        alert("你好");
    } else{
        alert("滾蛋");
    }
    // 方法2 三元運算
    a > b ? alert("你好"):alert("滾蛋");

    // 方法3 短路原理
    a > b || alert("滾蛋");
    a > b && alert("你好");

函數(shù)聲明

如果說一個函數(shù)被多次聲明,那么后邊的聲明會覆蓋前邊的聲明
函數(shù)調(diào)用無論寫在哪里,都能夠被調(diào)用
函數(shù)是默認被提升的(當(dāng)js開始執(zhí)行之前,會先把當(dāng)前作用域所有的函數(shù)全部提升到j(luò)s的最前邊讀?。?/p>

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

// 函數(shù)的參數(shù),函數(shù)在運行的時候需要一些外部的數(shù)據(jù)。那就是我們通過傳遞參數(shù)的形式實現(xiàn)
    // 聲明函數(shù)時傳入的參數(shù)是 形參
    // 調(diào)用函數(shù)時 傳入的參數(shù)是 實參

    // 函數(shù)的參數(shù)不是必須的,js允許我們不書寫參數(shù)

    function fn1(a){
        console.log(a);
    }
    fn1();//函數(shù)需要參數(shù)但是沒有傳遞  這個參數(shù)返回undefined

    function fn1(a,b){
        console.log(a,b);
    }
    fn1(,'1');//目前不允許只傳遞某一位的參數(shù)

    function fn1(name,name) {
        console.log(name,name);
    }
    fn1("小王","老王");//如果函數(shù)的參數(shù)命名重復(fù),那么以后傳入的為準

    // arguments?。。?!代表的是函數(shù)的實參  只能在函數(shù)內(nèi)部使用 直接使用
        //是一個偽數(shù)組
    function f() {
        console.log(arguments);
    }
    f(1,2,3,4,5,5,6);

函數(shù)作用域

// 作用域就是變量與函數(shù)的可訪問范圍,即作用域控制著變量與函數(shù)的可見性和生命周期
    // 作用域是按照函數(shù)來劃分的

    // 一旦在當(dāng)前作用域聲明了一個變量,那么本作用域就不能使用祖輩作用域的變量

    //作用域分為 全局作用域和局部作用域 (變量就分為 全局變量和局部變量)
    //最外層就是全局作用域,最外層定義的變量就是全局變量
    var a = 10;//全局變量
    function fn1() {
        var b = 20;//局部變量
        console.log(b);//20
        console.log(a);//10
    }
    console.log(a);//10
    console.log(b);//b is not defined*/
// 當(dāng)使用一個變量的時候,先尋找自身有沒有定義這個變量,如果有 則不再使用父級作用的變量
    var a = 1;
    function fn1() {
        var a = 2;
        console.log(a);//2
        function fn2() {
            var a = 3;
            console.log(a);//3
            function fn3() {
                var a = 4;
                console.log(a);//4
            }
        }
    }
var a = 1;
    function fn1() {
        a = 2;//在這個局部作用域中 沒有聲明a 但是給a 賦值  就要去看a在哪里聲明  然后把那個a的值改變了
                //在這里把全局a的值改變?yōu)榱?2
        console.log(a);//全局 a  2
        function fn2() {
            a = 3;//把全局的a為3
            console.log(a);//全局 a   3
            function fn3() {
                a = 4; //把全局的a 變成4
                console.log(a);//全局a   4
            }
            fn3();
        }
        fn2();
    }
局部作用域

局部變量在執(zhí)行到當(dāng)前作用域的時候才會聲明
局部變量也是保存在內(nèi)存當(dāng)中的
但是當(dāng)前函數(shù)執(zhí)行完畢以后,局部變量就會被自動銷毀,可以節(jié)省內(nèi)存
并且其他作用域訪問不到,不會對當(dāng)前變量造成影
我們盡可能少的使用全局變量,因為占用內(nèi)存并且特別危險(任何地方都可以修改)

?著作權(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)容

  • Lua 5.1 參考手冊 by Roberto Ierusalimschy, Luiz Henrique de F...
    蘇黎九歌閱讀 14,257評論 0 38
  • 這是16年5月份編輯的一份比較雜亂適合自己觀看的學(xué)習(xí)記錄文檔,今天18年5月份再次想寫文章,發(fā)現(xiàn)簡書還為我保存起的...
    Jenaral閱讀 3,146評論 2 9
  • 函數(shù)和對象 1、函數(shù) 1.1 函數(shù)概述 函數(shù)對于任何一門語言來說都是核心的概念。通過函數(shù)可以封裝任意多條語句,而且...
    道無虛閱讀 4,959評論 0 5
  • 第3章 基本概念 3.1 語法 3.2 關(guān)鍵字和保留字 3.3 變量 3.4 數(shù)據(jù)類型 5種簡單數(shù)據(jù)類型:Unde...
    RickCole閱讀 5,527評論 0 21
  • 第一章 錯誤處理: 錯誤: 程序運行過程中,導(dǎo)致程序無法正常執(zhí)行的現(xiàn)象(即bug) 現(xiàn)象: 程序一旦出錯,默認會報...
    fastwe閱讀 1,253評論 0 1

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