class 用法 函式變數的作用域

2022-08-09 11:36:09 字數 1553 閱讀 2179

函式變數的作用域

1. 函式體內宣告的變數

2. 引數中的變數

沒有賦值的  function fn(a){}

賦值的,值不是變數  function fn(a=45){}

賦的值為變數  function fn(a=m){}

引數執行的時候,先給形參賦值,形參也是私有變數,如果給形參賦的值也是變數,先看這個變數是不是私有的(不是針對函式體內,只針對形參,還跟形參的順序有關),是私有的直接使用,

如果不是私有的,變數找全域性的,如果全域性沒有報錯

注意:給形參的賦的變數於形參同名  function fn(a=a)  會出現暫時性死區  因為:形參沒有變數提公升

class 類的由來

class 的作用:

1. 定義類的

2. 沒有變數提公升

案例:class person

fn(){}

static mn(){}

class son extends person 內,變數名必須和暴露的介面名一致;

exprot var a="hello world"  (不建議)

var a="hello world";   exprot   (建議)

引入介面

import from "檔名"

暴露多個變數,必須加 {}

模組檔案暴露什麼,引入檔案接收什麼 (例如:export 為乙個物件,那麼 import from "檔名" 的 a 就是乙個物件)

注意:export 暴露必須是乙個變數,或變數集合

不能直接暴露乙個資料,例如:export 12 這種寫法就是錯的

如果不想讓別人知道你暴露的什麼介面,我們可以使用 as 關鍵字

案例:var a = "hello world";

export ;  ben 和 a 都 代表了這個字串

import from "檔名"

console.log(ben);  // hello world

export default 介紹

案例:a.js

var a="hello world"

export default a;

b.js

import haha from "a.js";

console.log(haha)  //hello world;

總結:export 和 import 時一對,二者後面都必須帶 {} ,花括號裡面的變數名,保持一致

export default 和 import 也是一對,二者後面不用帶 {} ,名字不需要一致;

export default 一次只能對外輸出乙個

exprot default 本質是將值賦給變數 default ,所以,default 後面不能對變數在次宣告;

export default var a       x   這種寫法錯的

export default function fn   v   這種寫法可以

export default 的本質:

export   default 可以是任何變數,所以便能實現 export default 

函式 引數 變數作用域

一 函式引數 1.必須引數 必需引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣。呼叫printme 函式,你必須傳入乙個引數,不然會出現語法錯誤 小括號內的就是引數 小括號內沒東西叫做無參,有叫有參 求任意三個數之和 在定義函式的時候小括號內寫的是變數名字,不需要賦值 在呼叫函式的時候小...

函式中變數的作用域

今天用函式的時候遇到了乙個問題,後來總結了下 函式中若對變數進行了初始化,則該變數為區域性變數 若沒有初始化而直接對該變數操作,則該變數為全域性變數。一般這種情況出現在列表和字典的使用中。如 a 1 b 1 list dict def ch1 b a 1 def ch3 dict x 1 ch1 c...

作用域,變數作用域,作用域鏈知識

第2章 變數作用域 第3章 作用域鏈 預覽 1.全域性作用域 整個script標籤下 或者是單獨的js檔案 外部js 2.區域性作用域也叫 函式作用域 在函式內部就是區域性作用域 這個 的名字 變數 只在函式內部起作用和效果 3.不同作用域下,定義相同變數名是不衝突的。如果是在同一作用域宣告2個相同...