js 作用域,閉包

今天又看到一本干貨滿滿的動物書,短小精悍,與js啟示錄帶來的感覺一樣

(1)重新聲明一個已有的變量,則并不會將該變量的值設置回undefined
var q = 22;
var q;        
// q仍為22;

(2)可以用字母數(shù)字下劃線$來命名變量,但不能以數(shù)字開頭
(3)typeof 操作符總是返回一個字符串
(4)作用域
var weight = 140;

    function lose(weight){

        console.log(weight); //140
        //雖然有變量提升,但是優(yōu)先級沒有參數(shù)高
        var weight = 135;
    }

    lose(weight);
    //140 函數(shù)作用域內變量無法訪問
    console.log(weight); 

函數(shù)內提升的局部變量優(yōu)先級沒有參數(shù)高


函數(shù)中變量修改

如果沒有傳入?yún)?shù),并且對函數(shù)進行了調用,是可以修改外部變量的


image.png

當變量作為參數(shù)傳入,再進行修改,外部是不起作用的


image.png

函數(shù)與變量提升,相互賦值


image.png
  • result:
    image.png
(1)

閉包是函數(shù)與聲明該函數(shù)的詞法環(huán)境的組合

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

相關閱讀更多精彩內容

  • 一、作用域 作用域:變量生效(可以被訪問)的范圍,用來控制變量的可見性和生命周期。 全局作用域:不單獨屬于某一個函...
    清心挽風閱讀 338評論 0 2
  • 1.全局變量 定義在函數(shù)外部的變量都是全局變量。 聲明提前 2.局部變量 定義在函數(shù)內部的變量都是局部變量。 3....
    壬萬er閱讀 295評論 0 0
  • 第1章 JavaScript 簡介 JavaScript 具備與瀏覽器窗口及其內容等幾乎所有方面交互的能力。 歐洲...
    力氣強閱讀 1,295評論 0 0
  • 前言 對于js中的閉包,無論是老司機還是小白,我想,見得不能再多了,然而有時三言兩語卻很難說得明白,反正在我初學時...
    itclanCoder閱讀 4,302評論 1 11
  • 我昨天請室友和一個學長吃飯了,原因嘛,沒啥,就是其中一個室友A和學長幫了我的忙,另一個室友B的話,我昨天高興,請他...
    一條那啥閱讀 264評論 0 0

友情鏈接更多精彩內容