Node開發(四)Symbol Set和Map

2021-10-09 19:26:49 字數 2479 閱讀 8253

symbol是es6中新增的一種資料型別(原始資料型別)

常見的七種資料型別:number、string、boolean、null、undefined、object、symbol

symbol是乙個獨一無二的值

也就是說使用同乙個**產生的兩個symbol型別也是不相同的

let s=

symbol()

;console.

log(s)

;//symbol()

let s1=

symbol()

;console.

log(s==s1)

;//false 兩個值不想等 獨一無二

symbol函式可以傳入引數,引數只具有描述意義,沒有什麼本質的意義(僅僅用於區分)

let s=

symbol

('1');

let s1=

symbol

('2');

console.

log(s)

; console.

log(s1)

;

es6中新增了兩種集合型別:set map

四種集合型別:陣列、物件、map和set

1.使用:

通過new運算子來建立set集合

2.填充資料

1)通過建構函式

new set(陣列);

2)使用方法

add() 可以向set中新增資料, 返回值依然為set(自身)

3.set的特點:

set中只能儲存不重複的元素

4.set 常見的屬性和方法

(1)屬性: size 集合中資料的個數

(2)方法:

add() 新增資料

delete(value) 刪除資料

has(value) 判斷集合中是否包含某資料 true /false

clear() 刪除所有資料

5.遍歷

可以使用foreach進行遍歷

示例:使用set完成陣列去重

//實現陣列去重

let arr =[10

,20,30

,10,10

,20,20

,100

,500];

// let s=new set(arr);

// console.log(s);

letuniqarr

=(arr)

=>

;

也是es6中新增的集合結構

map其實是一種hash結構,資料 鍵值對 key/value

增強版的object,鍵可以使任意的型別

1.使用

new map()

2.常用屬性和方法

屬性:size

方法:set(key,value) 向map中新增資料

get(key) 從map中取出資料

has(key) 判斷是否包含某元素 true/false

delete(key) 根據key刪除元素

clear()

keys() 取出所有的鍵

values() 取出所有的值

entries() 實體

3.遍歷

foreach

m.

foreach

((item,index)

=>

);

4.map應用

1)轉換為陣列

2)map轉換為物件

//將map-->obj

let obj =

;for

(let

[key, value]

of m)

3)物件—>map

let obj =

;let map =

newmap()

;for

(let i in obj)

console.

log(map)

;

for…of可以用來遍歷set和map結構

for…of遍歷產生的就是值

let s =

newset([

10,20,

30,100,70]

);//for of遍歷

for(

let item of s)

let m =

newmap()

; m.

set(

'name'

,'李四');

m.set(

'age'

,'20');

for(

let item of m)

for(

let[key, value]

of m)

node開發環境安裝

注意 之前安裝過nodejs的先解除安裝。安裝過程 檢查結果 cmd執行nvm h 出現如下圖所示表示nvm安裝成功 修改d dev nvm settings.txtroot d dev nvmpath d dev nodejs node mirror npm.taobao.org mirrors ...

node開發掃盲貼

最近在學東西的時候發現自己對於package.json裡scripts中的內容理解不到位,所以重新系統的學習一下 npm 允許在package.json檔案裡面,使用scripts字段定義指令碼命令。npm 指令碼的原理非常簡單。每當執行npm run,就會自動新建乙個 shell,在這個 shel...

node開發利器 nodemon

通過上篇的例項,我們了解到,每次我們編輯 後,都需要重新啟動服務,更改的 才能生效。這是因為當服務啟動時,會被解析並load到記憶體中去,在執行過程中,不會再重新解析檔案,這是nodejs提高效率的機制,目的是提高執行效率。然而,在開發過程中,頻繁的停止 重啟服務很麻煩,這時我們可以使用nodemo...