ES6入門---第三單元 模塊四:Set和WeakSet

set數據結構:
?? ?類似數組,但是里面不能有重復值,如果有,只顯示一個

set用法:

?? ?let setArr = new Set(['a','b']);

?? ?setArr.add('a'); ? 往setArr里面添加一項

let setArr = new Set().add('a').add('b').add('c');

?? ?setArr.delete('b');?? ?刪除一項

?? ?setArr.has('a')?? ?判斷setArr里面有沒有此值

?? ?setArr.size?? ?個數

? ? setArr.clear();?? ?清空

循環:

a)

let setArr = new Set(['a','b','c','d']);for(let item of setArr){//默認就是valueconsole.log(item);}

b). for(let item of setArr.keys()){console.log(item);}
c). for(let item of setArr.values()){}
d). for(let [k,v] of setArr.entries()){}

e). setArr.forEach((value,index) =>{
?? ??? ? ? ? ? ? ? ?console.log(value, index);
?? ??? ? ? ? ? ?});

作用:

1、去重?

let arr = [1,2,3,4,5,6,7,6,5,4,3,2,1,2,3,4,4];let newArr = [...new Set(arr)];console.log(newArr);

補充:

1、讓set數據結構變成數組:
?? ?[...set]

2、想讓set使用數組的,map循環和filter:

let set = new Set([1,2,3]);let set2 = new Set();for(let value of set.values()){set2.add(value*2);}console.log(set2);

?map() 方法返回一個新數組,數組中的元素為原始數組元素調用函數處理后的值。

let set = new Set([1,2,3]);set = new Set([...set].map(val=>val*2));console.log(set);

filter() 方法創建一個新的數組,新數組中的元素是通過檢查指定數組中符合條件的所有元素。

let set = new Set([1,2,3,4,5,6]);set = new Set([...set].filter(val=>val%2==0));console.log(set);

new Set([]);?? ?存儲數組, 這種寫法對

錯誤:

 let set = new Set({a:1,b:2});set.forEach((item) =>{console.log(item);})

new WeakSet({})?? ?存儲json,這種寫法不靠譜

?? ?WeakSet沒有size,也沒有clear()

?? ?有, add(), has(), delete()

初始往里面添加東西,是不行的。最好用add添加

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

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

相關文章

Cognito

首先Cognito沒有提供登錄至AWS控制臺的功能,然而您可以通過Cognito Identity Pool獲取到IAM role的credentials [1],再另外通過代碼自行將IAM role credentials拼湊成AWS控制臺登錄的URL [2]。 最后,由于Cognito的使用除了User Pool以及Iden…

EfficientNet 改進:與Transformer結合的圖像分類模型

1.介紹 在計算機視覺領域,EfficientNet因其高效的網絡架構設計而廣受歡迎。 本文將深入分析一個結合EfficientNet主干和Transformer分類頭的創新模型實現。 模型概述 這個實現將EfficientNet的高效特征提取能力與Transformer的強大序列建模能力相結合,主要包含以下幾個核心…

復雜網絡系列:第 5 部分 — 社區檢測和子圖

關鍵詞:Community Detection Algorithms 一、說明 在本教程中,我們將探討網絡分析的兩個基本方面:社區檢測和使用子圖。了解這些概念將使您能夠發現復雜網絡中隱藏的結構和關系。 二、何為社區,何為社區檢測? 2.1 …

【辦公類-99-04】20250504閔豆統計表excle轉PDF,合并PDF、添加中文字體頁眉+邊框下劃線

需求說明 督導檢查,各條線都要收集資料。 今天去加班,遇到家教主任,她讓我用保教主任的彩色打印機打印這套活躍度表格。(2023學年上學期下學期-2024學年上學期,就是202309-202504) 每個excle都是內容在A4一…

升級 CUDA Toolkit 12.9 與 cuDNN 9.9.0 后驗證指南:功能與虛擬環境檢測

#工作記錄 在 NVIDIA 發布 CUDA Toolkit 12.9 與 cuDNN 9.9.0 后,開發者紛紛選擇升級以獲取新特性和性能提升。 CUDA Toolkit 12.9 與 cuDNN 9.9.0 發布,帶來全新特性與優化-CSDN博客 然而,升級完成并不意味著大功告成,確認升級后…

LLM論文筆記 28: Universal length generalization with Turing Programs

Arxiv日期:2024.10.4機構:Harvard University 關鍵詞 圖靈機 CoT 長度泛化 核心結論 Turing Programs 的提出 提出 Turing Programs,一種基于圖靈機計算步驟的通用 CoT 策略。通過將算法任務分解為逐步的“磁帶更新”(類似圖靈…

【全隊項目】智能學術海報生成系統PosterGenius--圖片布局生成模型LayoutPrompt(1)

🌈 個人主頁:十二月的貓-CSDN博客 🔥 系列專欄: 🏀大模型實戰訓練營_十二月的貓的博客-CSDN博客 💪🏻 十二月的寒冬阻擋不了春天的腳步,十二點的黑夜遮蔽不住黎明的曙光 目錄 1. 前…

位圖的實現和拓展

一:位圖的介紹 ①:需要位圖的場景 給40億個不重復的無符號整數,沒排過序。給一個無符號整數,如何快速判斷一個數是否在這40億個數中? 要判斷一個數是否在某一堆數中,我們可能會想到如下方法: A…

排序功法入門指南【江湖算法筆記】

話說江湖風云變幻,各路英雄好漢行走江湖,總得有個名號排行。若問“東邪西毒南帝北丐”誰強誰弱,總得排個座次不是?這排序之道,恰似武功秘籍,練好了能號令群雄,練岔了怕是要被笑掉大牙&#xff0…

【中間件】brpc_基礎_用戶態線程中斷

bthread之用戶態線程中斷 源碼 1 簡介 interrupt_pthread 核心功能是 通過信號機制中斷阻塞的 pthread 線程,以實現線程的協作式中斷。 2 核心功能與設計 2.1 信號選擇與注冊 信號選擇:使用 SIGURG 作為中斷信號。 原因:SIGURG 通常用于…

Linux 的網絡卡

#本機操作系統CentOS 10 #核心版本 rootbogon:/etc# uname -r 6.12.0-65.el10.x86_64 網卡能不能被捉到可以使用【dmesg|grep xx】來判斷,有沒有驅動則可以使用lsmod看看模塊有沒有加載核心!最后,以ifconfig xxx測試看看 觀察核心所捉到的網卡…

前端雙工通信的幾種方案詳細描述

前端實現雙工通信(全雙工或半雙工)的常見方案及詳細實現如下: 一、WebSocket(全雙工) 原理:基于 TCP 的持久化協議,客戶端與服務端建立雙向通信通道,支持實時雙向數據傳輸。 // 客…

KUKA機器人快速啟動設置

KUKA機器人在首次開機啟動時,有時在示教器上需要進行投入運行等相關的設置。如以下相關的信息需要處理: 1、機器人系統開機后,選擇T1運行模式;2、顯示提示信息:“RDC 存儲器和控制系統不一致什么被更換了”時&#xf…

游戲代碼C

以下將結合不同編程語言的特點及游戲開發中的實際應用,展示多種語言的游戲代碼示例(以簡單游戲為例,展示代碼結構和邏輯差異)。由于代碼篇幅較長,我將分語言進行說明并引用相關來源: 1. C# Unity&#xff…

LangChain Agent核心解析:Zero-Shot-ReAct策略實現與實戰指南

引言 在LangChain的Agent框架中,zero-shot-react-description 是一種預定義的Agent類型,它結合了Zero-Shot(零樣本學習) 和 ReAct(推理行動) 策略,主要用于根據工具的描述動態選擇和執行工具&a…

PyQt 或 PySide6 進行 GUI 開發文檔與教程

一、官網文檔 Qt 官方文檔:Porting to Qt 6 | Qt 6.9Qt 維基:???????Qt WikiQt for Python (PySide6) :???????Qt for Python - Qt WikiPySide6 快速上手指南:???????Getting Started - Qt for Python PyS…

2024年第十五屆藍橋杯省賽B組Python【 簡潔易懂題解】

2024年第十五屆藍橋杯省賽B組Python題解 一、整體情況說明 2024年第十五屆藍橋杯省賽B組Python組考試共包含8道題目,分為結果填空題和程序設計題兩類。 考試時間:4小時編程環境:Python 3.x,禁止使用第三方庫,僅可使…

Go語言--語法基礎4--基本數據類型--類型轉換

Go 是一種強類型的語言,所以如果在賦值的時候兩邊類型不一致會報錯。一個類型的值可以被轉換成另一種類型的值。由于 Go 語言不存在隱式類型轉換,因此所有的類型轉換都必須顯式的聲明。 強制類型轉換語法 使用 type (a) 這種形式來進行強制類型轉換&am…

nginx 代理時怎么更改 Remote Address 請求頭

今天工作中遇到用 localhost 訪問網站能訪問后臺 api,但是用本機IP地址后就拒絕訪問,我懷疑是后臺獲取 Remote Address 然后設置白名單了只能 localhost 訪問。 想用 nginx 更改 Remote Address server {listen 8058;server_name localhost;loca…

LeetCode刷題鏈表

文章目錄 鏈表總結 常用技巧兩數相加題解代碼 兩兩交換鏈表中的節點題解代碼 重排鏈表題解代碼 合并k個升序鏈表題解代碼 K個一組翻轉鏈表題解代碼 鏈表總結 常用技巧 畫圖 直觀 形象 便于理解引入虛擬頭節點,便于處理邊界情況,方便我們對鏈表進行…