原來竟然還有這種區域性變數!

2022-06-05 03:39:09 字數 594 閱讀 3216

我們知道,es5只有函式作用域,可以利用函式來隱藏「資訊」,把需要暴露的資訊「最小化」,成為「最小特權原則」。

但昨天看到其實還有另一種區域性變數,從es3時代就有了,這就是catch(error)中的error變數(即錯誤變數)只能在catch塊中訪問,外面訪問不到。

try

catch

(error)

//在catch塊外部訪問error

console.log(error);

//錯誤!

但在catch塊內部(即花括號內部)var宣告的變數依然屬於全域性變數,外部依然可以訪問。

try

catch

(error)

//外部訪問變數b

console.log(b);

//lala

console.log(window.hasownproperty("b")); //

true

可見,在catch塊花括號裡宣告的變數依然正常被當作全域性變數被新增到window物件裡。

先寫這麼多吧。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

TStringList還有這功能呀

以為會用tstringlist儲存物件指標,就算是會tstringlist的高階應用了呢,今天看到它還有這樣兩個屬性 delimiter delimitedtext 它的功能是把乙個字串分解tstringlist型別,如字串 aa,bb,cc 分解後tstringlist 0 為 aa tstrin...

突然想起還有這個部落格

外面下著雨,挺大的。宿舍已經關燈,乙個人,靜靜的,托著筆電在床上。翻開以前的幾篇日誌,勾起了些回憶,能寫日誌還是挺好的,可惜一直沒有堅持。好吧,今晚之前,有什麼特別的就記一下吧,這裡應該沒有人會知道我是誰,所以就放心寫吧。寫些什麼呢。嗯,答應了老太太的任務,一年的任務,已經半年了,還沒下方。公司5月...

React 還有這種操作方式

複製 先定義乙個元件mycomponent,在使用元件的地方呼叫 class mycomponent extends react.componet 複製 使用元件時元件的children傳遞個方法 複製 new promise resolve console.log 4 then t console...