【ES6復習筆記】Map(14)

概念

Map 是 JavaScript 中的一種數據結構,它允許你存儲鍵值對,并且可以通過鍵來訪問對應的值。在本教程中,我們將學習如何聲明、添加、刪除、獲取和遍歷 Map 集合。

ES6 提供了 Map 數據結構。它類似于對象,也是鍵值對的集合。但是 “鍵” 的范圍不限于字符串,各種類型的值(包括對象)都可以當作鍵。Map 也實現了 iterator 接口,所以可以使用『擴展運算符』和「for…of…』進行遍歷。Map 的屬性和方法。

聲明 Map

首先,我們需要聲明一個 Map 對象。在 JavaScript 中,你可以使用 new Map() 來創建一個新的 Map 實例。

let m = new Map();

Map的屬性和方法:

  1. size:返回Map的元素個數。
  2. set(key, value):增加一個新元素,返回當前Map。
  3. get(key):返回鍵名對象的鍵值。
  4. has(key):檢測Map中是否包含某個元素,返回boolean值。
  5. clear():清空集合,返回undefined。

添加元素

你可以使用 set 方法向 Map 中添加元素。set 方法接受兩個參數:鍵和值。

m.set('name', '星達網絡');
m.set('change', function() {console.log("我們可以改變你!!");
});
let key = {school: 'xkadmin'
};
m.set(key, ['北京', '上海', '深圳']);

獲取元素數量

你可以使用 size 屬性來獲取 Map 中元素的數量。

console.log(m.size);

刪除元素

你可以使用 delete 方法從 Map 中刪除指定的鍵值對。

m.delete('name');

獲取元素

你可以使用 get 方法獲取 Map 中指定鍵的值。

console.log(m.get('change'));
console.log(m.get(key));

清空 Map

你可以使用 clear 方法清空 Map 中的所有元素。

m.clear();

遍歷 Map

你可以使用 for...of 循環來遍歷 Map 中的所有鍵值對。

for(let v of m) {console.log(v);
}

完整代碼示例

下面是一個完整的代碼示例,展示了如何使用 Map 集合。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Map</title>
</head>
<body><script>//聲明 Maplet m = new Map();//添加元素m.set('name', '星達網絡');m.set('change', function() {console.log("我們可以改變你!!");});let key = {school: 'xkadmin'};m.set(key, ['北京', '上海', '深圳']);//sizeconsole.log(m.size);//刪除m.delete('name');//獲取console.log(m.get('change'));console.log(m.get(key));//清空// m.clear();//遍歷for(let v of m) {console.log(v);}// console.log(m);</script>
</body>
</html>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/64278.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/64278.shtml
英文地址,請注明出處:http://en.pswp.cn/web/64278.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

富芮坤FR800X系列之PWM輸出程序應用設計

文章目錄 前言1.設計背景2.簡介3.如何設計控制調光的接口呢4.硬件設計5.軟件設計5.1.軟件流程圖5.2.軟件代碼 6.小結 前言 版權歸作者所有、未經允許、請勿轉載。 讀者對象&#xff1a; 本文檔主要適用以下工程師&#xff1a; ?嵌入式系統工程師 ?單片機軟件工程師 ?IOT固…

Ftrans數據擺渡系統 搭建安全便捷跨網文件傳輸通道

一、專業數據擺渡系統對企業的意義 專業的數據擺渡系統對企業具有重要意義&#xff0c;主要體現在以下幾個方面?&#xff1a; 1、?數據安全性?&#xff1a;數據擺渡系統通過加密傳輸、訪問控制和審計日志等功能&#xff0c;確保數據在傳輸和存儲過程中的安全性。 2、?高…

EasyPoi 使用$fe:模板語法生成Word動態行

1 Maven 依賴 <dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-spring-boot-starter</artifactId><version>4.0.0</version> </dependency> 2 application.yml spring:main:allow-bean-definition-over…

定義Shape:打造屬于你的獨特圖形

自定義Shape:打造屬于你的獨特圖形 在Android開發中,自定義圖形繪制是一個非常重要的技能,尤其是在需要實現復雜UI或特定設計需求時。Android提供了android.graphics.drawable.shapes包,其中包含了一些基本的形狀類,如RectShape、OvalShape等。然而,有時這些基本形狀無法…

python 滲透開發工具之SQLMapApi Server不同IP服務啟動方式處理 解決方案SqlMapApiServer外網不能訪問的情況

目錄 說在前面 什么是 SQLMapAPI 說明 sqlmapApi能干什么 sqlmapApi 服務安裝相關 kali-sqlmap存放位置 正常啟動sqlmap-api server SqlMapApi-Server 解決外網不能訪問情況 說在前面 什么是sqlmap 這個在前面已經說過了&#xff0c;如果這個不知道&#xff0c;就可以…

【基礎還得練】 KKT 條件

優秀教程-真正理解拉格朗日乘子法和 KKT 條件&#xff1a; link優秀教程-最優化(6)&#xff1a;一般約束優化問題的最優性理論&#xff1a; link KKT條件&#xff08;Karush-Kuhn-Tucker條件&#xff09;是非線性規劃中的一組必要條件&#xff0c;在某些情況下也是最優解的充分…

使用 Webpack 優雅的構建微前端應用?

Module Federation 通常譯作“模塊聯邦”&#xff0c;是 Webpack 5 新引入的一種遠程模塊動態加載、運行技術。MF 允許我們將原本單個巨大應用按我們理想的方式拆分成多個體積更小、職責更內聚的小應用形式&#xff0c;理想情況下各個應用能夠實現獨立部署、獨立開發(不同應用甚…

Boost之log日志使用

不講理論&#xff0c;直接上在程序中可用代碼&#xff1a; 一、引入Boost模塊 開發環境&#xff1a;Visual Studio 2017 Boost庫版本&#xff1a;1.68.0 安裝方式&#xff1a;Nuget 安裝命令&#xff1a; #只安裝下面幾個即可 Install-package boost -version 1.68.0 Install…

【MySQL】十四,MySQL 8.0的隱藏索引

在MySQL 8.0之前的版本中&#xff0c;索引只能直接刪除。如果刪除后發現引起了系統故障&#xff0c;又必須進行創建。當表的數據量比較大的時候&#xff0c;這樣做的代價就會非常高。 在MySQL 8.0中&#xff0c;提供了隱藏索引。如果想刪除某個索引&#xff0c;那么在實際刪除…

【ES6復習筆記】解構賦值(2)

介紹 解構賦值是一種非常方便的語法&#xff0c;可以讓我們更簡潔地從數組和對象中提取值&#xff0c;并且可以應用于很多實際開發場景中。 1. 數組的解構賦值 數組的解構賦值是按照一定模式從數組中提取值&#xff0c;然后對變量進行賦值。下面是一個例子&#xff1a; con…

爬蟲數據存儲:Redis、MySQL 與 MongoDB 的對比與實踐

爬蟲的核心任務是從網絡中提取數據&#xff0c;而存儲這些數據是流程中不可或缺的一環。根據業務需求的不同&#xff0c;存儲的選擇可能直接影響數據處理的效率和開發體驗。本文將介紹三種常用的存儲工具——Redis、MySQL 和 MongoDB&#xff0c;分析它們的特點&#xff0c;并提…

【Python】使用匿名函數Lambda解析html源碼的任意元素(Seleinium ,BeautifulSoup皆適用)

一直都發現lambda函數非常好用&#xff0c;它可以用簡潔的方式編寫小函數&#xff0c;無需寫冗長的過程就可以獲取結果。干脆利落&#xff01; 它允許我們定義一個匿名函數&#xff0c;在調用一次性的函數時非常有用。 最近整理了一些&#xff0c;lambda函數結合BeautifulSou…

Bash語言的語法

Bash語言簡介與應用 Bash&#xff08;Bourne Again SHell&#xff09;是一種Unix Shell和命令語言&#xff0c;在Linux、macOS及其他類Unix系統中被廣泛使用。作為GNU項目的一部分&#xff0c;Bash不僅是對早期Bourne Shell的增強&#xff0c;還引入了許多特性和功能&#xff…

Ingress-Nginx Annotations 指南:配置要點全方面解讀(下)

文章目錄 1.HTTP2 Push Preload2.Server Alias3.Server snippet4.Client Body Buffer Size5.External Authentication6.Global External Authentication7.Rate Limiting8.Global Rate Limiting9.Permanent Redirect10.Permanent Redirect Code11.Temporal Redirect12.SSL Passt…

互聯網路由架構

大家覺得有意義和幫助記得及時關注和點贊!!! 本書致力于解決實際問題&#xff0c;書中包含大量的架構圖、拓撲圖和真實場景示例&#xff0c;內容全面 且易于上手&#xff0c;是不可多得的良心之作。本書目的是使讀者成為將自有網絡集成到全球互聯網 領域的專家。 以下是筆記內…

【Flutter_Web】Flutter編譯Web第三篇(網絡請求篇):dio如何改造方法,變成web之后數據如何處理

前言 Flutter端在處理網絡請求的時候&#xff0c;最常用的庫當然是Dio了&#xff0c;那么在改造成web端的時候&#xff0c;最先處理的必然是網絡請求&#xff0c;否則沒有數據去處理驅動實圖渲染。 官方鏈接 pub https://pub.dev/packages/diogithub https://github.com/c…

Spring Boot @Conditional注解

在Spring Boot中&#xff0c;Conditional 注解用于條件性地注冊bean。這意味著它可以根據某些條件來決定是否應該創建一個特定的bean。這個注解可以放在配置類或方法上&#xff0c;并且它會根據提供的一組條件來判斷是否應該實例化對應的組件。 要使用 Conditional注解時&#…

項目上傳到gitcode

首先需要在個人設置里面找到令牌 記住自己的賬號和訪問令牌&#xff08;一長串&#xff09;&#xff0c;后面git要輸入這個&#xff0c; 賬號是下面這個 來到自己的倉庫 #查看遠程倉庫&#xff0c;是不是自己的云倉庫 git remote -v # 創建新分支 git checkout -b llf # 三步…

【Rust自學】6.4. 簡單的控制流-if let

喜歡的話別忘了點贊、收藏加關注哦&#xff0c;對接下來的教程有興趣的可以關注專欄。謝謝喵&#xff01;(&#xff65;ω&#xff65;) 6.4.1. 什么是if let if let語法允許將if和let組合成一種不太冗長的方式來處理與一種模式匹配的值&#xff0c;同時忽略其余模式。 可以…

【Git學習】windows系統下git init后沒有看到生成的.git文件夾

[問題] git init 命令后看不到.git文件夾 [原因] 文件夾設置隱藏 [解決辦法] Win11 win10