JS雜學筆記2

2022-08-24 00:24:12 字數 703 閱讀 9708

1.js的原始資料型別和引用資料型別

原始資料型別:undefined,boolean,string,null,number  

引用資料型別:物件object

2.null和物件

雖然typeof(null)的輸出值為object但是null卻並不是乙個物件,出現這個現象的原因是由於js的乙個bug。在js的最初版本中使用的是32位系統,為了效能決定使用低位儲存變數的型別資訊,000開頭代表物件,null表示全是零,所以就將null錯蘇的判斷為了object。

3.(0.1+0.2)不等於0.3

0.1和0.2在轉換成二進位制後會無限迴圈,由於標準位數的限制後面多餘的位數被截掉,從而出現了精度的損失,在相加後轉換為十進位制由於精度的缺失就變成了0.30000000000000004了。

4.js型別轉換

轉換為數字、轉換成布林值、轉換成字串轉換規則如下:

5.閉包

紅寶書定義:閉包是指有權訪問另乙個函式作用域中的變數的函式

mdn定義:閉包是指那些能夠訪問自由變數的函式。(自由變數是指在函式中使用的,但既不是函式引數argument也不是區域性變數的變數,其實就是另乙個函式作用域的變數)

作用域鏈定義:當訪問乙個變數的時候,直譯器會首先在當前作用域查詢指示符,如果沒有找到則回去父作用域找,知道找到變數的指示符或者不在父作用域中,這就是作用域鏈。

閉包的本質:當前環境中存在指向父級作用域的引用。

python程式設計學習筆記(雜學)

seed a none 給定隨機數種子,預設為當前系統時間 random.seed 10 產生種子10對應的序列 random.random 生成乙個的隨機小數 import random random.seed 10 給定種子 random.random 種子相同得到的隨機數也相同randint ...

js知識整理 雜)

mapactions stage 3 物件展開運算子,mapactions函式返回乙個物件,然後對返回物件使用展開符 解構 可以快速取得陣列或者物件當中的元素或者屬性,無需藉由arr x 或者obj key 等方式進行賦值 var a,b,c arr 變數名與物件屬性名不一致解構 var obj v...

學習小筆記 雜雜的東西

1.建構函式就是用於初始化資料的函式,宣告基本的建構函式的語法就是宣告乙個和所在類同名的方法,但是該方法沒有返回型別 public class myclass 當我們使用new關鍵字建立類的時候,就會呼叫建構函式.2.屬性的定義結構 需要名字和型別 public intmyintprop set 設...