ts 變數宣告

2022-08-27 19:09:09 字數 1518 閱讀 3825

小心作用域規則

小心解構

塊級作用域的時間死區

const變數宣告原則

var a = 10;

function

f()

function

f()

}var g =f();

g();

//returns 11;

//***********************************===

//作用域規則

//全域性作用域

//區域性作用域

//這些作用域規則可能會引發一些錯誤。 其中之一就是,多次宣告同乙個變數並不會報錯:

for(var i=0; i<10;i++),i*100);

}(i)

}for (let i = 0; i < 10 ; i++) , 100 *i);}//

擁有塊級作用域的變數的另乙個特點是,它們不能在被宣告之前讀或寫。

//雖然這些變數始終「存在」於它們的作用域裡,但在直到宣告它的**之前的區域都屬於時間死區。

//塊級作用域變數的獲取

function

thecitythatalwayssleeps()

}return

getcity();}//

const 與let相同的作用域規則,但是不能對它們重新賦值。

//基本原則就是如果乙個變數不需要對它寫入,那麼其它使用這些**的人也不能夠寫入它們,並且要思考為什麼會需要對這些變數重新賦值。

//使用const也可以讓我們更容易的推測資料的流動。

//解構

let input = [1, 2];

let [first, second] =input;

console.log(first);

//outputs 1

console.log(second); //

outputs 2

//你可以使用...name語法建立乙個剩餘變數列表:

let [first, ...rest] = [1, 2, 3, 4];

console.log(first);

//outputs 1

console.log(rest); //

outputs [ 2, 3, 4 ]

let o =

let =o;

console.log(o['a']);

console.log(o['b']);

//資料型別指明

let : =o;

function f( = ): void

f() //

ok, default b = 0

f() //

ok, default to , which then defaults b = 0

f({}) //

error, 'a' is required if you supply an argument

//要小心使用解構。 從前面的例子可以看出,就算是最簡單的解構也會有很多問題

ts 宣告變數型別

ts中,宣告變數時可以同時指定其型別,格式 var name string forrest 這樣,當 name 1 會報錯,因為name已經指定了string型別如果想指定變數為可變型別,可以 var name any forrest 注意,即使name被指定為string型別,在ts中不能複製數字...

TS 的型別宣告和變數型別

一 型別宣告 型別宣告是 ts 非常重要的乙個特點,通過型別宣告可以指定 ts 中變數 引數 形參 的型別 當為變數賦值時,ts編譯器會自動檢查值是否符合型別宣告,符合則賦值,否則報錯 簡而言之,型別宣告給變數設定了型別,使得變數只能出儲存某種型別的值,這是 js 不具備的 語法 let a num...

宣告變數 如果同時宣告多個變數

如果同時宣告多個變數,可以用以下語句 也可以按如下宣告 dim a as integer,b as integer,c as integer但是不可以按如下宣告 dim a,b,c as integer 如果這樣操作,僅有c宣告正確。如何檢查是否宣告成功呢?可以使用typename函式來判斷。msg...