JavaScript 異步循環踩坑指南
1. 前言 在循環中使用 await,代碼看似直觀,但運行時要麼悄無聲息地停止,要麼運行速度緩慢,這是為什麼呢? 本篇聊聊 JavaScript 中的異步循環問題。 2. 踩坑 1:for 循環裏用 await,效率太低 假設要逐個獲取用户數據,可能會這樣寫: const users = [1, 2, 3]; for (const id of users) { const user = awa
Nickname 冴羽
Contributes11
Followers0
1. 前言 在循環中使用 await,代碼看似直觀,但運行時要麼悄無聲息地停止,要麼運行速度緩慢,這是為什麼呢? 本篇聊聊 JavaScript 中的異步循環問題。 2. 踩坑 1:for 循環裏用 await,效率太低 假設要逐個獲取用户數據,可能會這樣寫: const users = [1, 2, 3]; for (const id of users) { const user = awa
Nickname 冴羽
JavaScript 中的數組分組:array.groupBy() 原文: https://dmitripavlutin.com/ja... 由於豐富的標準實用程序庫,許多開發人員喜歡 Ruby 編程語言。例如,Ruby 中的數組有大量的方法。 JavaScript 也逐步豐富了其關於字符串和數組的標準庫。例如,在之前的文章中,我描述了新的array.at()方法。 今天的主角是新的數組組提案(目
Nickname 陳東民
javascript的基本數據類型以及引用數據類型,基本數據類型在開發中經常會用到,包括作為變量使用,判斷數據類型來處理一些業務等 基本(簡單數據類型) undefined,Null,Boolean,Number,String 複雜的數據類型Object undefined undefined 類型只有一個值,即它本身,在使用var聲明變量但未給初始值時,這個變量的值為undefine
Nickname 程序猿布歐
需求背景 由於現有的後台管理系統,上傳的視頻越來越大,加上上傳視頻較慢,後端小哥提出直接從前端上傳視頻或者其他文件到阿里雲OSS存儲。 阿里雲OSS 阿里雲OSS文檔介紹,這裏不做過多贅述 安裝 原本在最開始的時候,是使用node版本的SDK,最開始使用的[nodejs版本] 代碼如下 async function put() { try { let result
Nickname 程序猿布歐
在瞭解深拷貝和淺拷貝之前,我們先梳理一下: JavaScript中,分為基本數據類型(原始值)和複雜類型(對象),同時它們各自的數據類型細分下又有好幾種數據類型 基本數據類型 數字Number 字符串String 布爾Boolean Null Undefined Symbols BigInt 基本數據類型在內存當中,是存儲在棧Stack 在數據結構當中 棧在內存上的分配的空間生命週期很短,當變
Nickname 程序猿布歐
前言 Number和Math都屬於JavaScript中的內置對象,Number數字類型作為基礎數據類型,我們在開發過程中會經常用到,包括數字精度的格式化,還有字符串轉換成數字等操作。 Number數字 自帶屬性值 Number.EPSILON 兩個可表示(representable)數之間的最小間隔。 Number.MAX_SAFE_INTEGER JavaScript 中最大的安全整數 (
Nickname 程序猿布歐
esm是什麼? esm 是將 javascript 程序拆分成多個單獨模塊,並能按需導入的標準。和webpack,babel不同的是,esm 是 javascript 的標準功能,在瀏覽器端和 nodejs 中都已得到實現。使用 esm 的好處是瀏覽器可以最優化加載模塊,比使用庫更有效率。 esm 標準通過import, export語法實現模塊變量的導入和導出。 esm 模塊的特點 存在模塊
Nickname 起風了
前言 在JavaScript中,數據類型分為兩大類,一種是基礎數據類型,另一種則是複雜數據類型,又叫引用數據類型 基礎數據類型:數字Number 字符串String 布爾Boolean Null Undefined Symbols BigInt 引用數據類型:日期Dete,對象Object,數組Array,方法Function, 正則regex,帶鍵的集合:Maps, Sets, WeakM
Nickname 程序猿布歐
2022 年 6 月 22 日,第 123 屆 ECMA 大會批准了 ECMAScript 2022 語言規範,這意味着它現在正式成為標準。下面就來看看 ECMAScript 2022 有哪些新特性! 新特性總覽 Top-level Await Object.hasOwn() at() error.cause 正則表達式匹配索引 類 ES14: Array.prototype
Nickname 🦄Y0i1w
聲明:本文為翻譯文章,原文為11 Amazing New JavaScript Features in ES13 像其他語言一樣,JavaScript也在不斷迭代和進化。JS每年都會加入很多新的功能來讓自己變得越發強大,也正是這樣,我們開發者才能寫出更加表意和準確的代碼。 在這篇文章中我們會通過一些例子來看一下最新的ECMAScript 2022(ES13)給我們開發者帶來的11個超讚的新功能。
Nickname 進擊的大葱
在 Elasticsearch 中,分片的數量在創建索引時就已經設置好了,所以在已經創建的索引中增加分片是不可能的。這是因為 Elasticsearch 在創建索引時,會根據分片的數量把數據分佈到不同的節點上,如果在創建索引後改變分片的數量,那麼數據的分佈就會出問題,這是 Elasticsearch 設計上的一個決定。 儘管不能直接更改已存在的索引的分片數,但我們可以通過重新索引(reindex)
Nickname 註銷
前言 與許多其他編程語言一樣,JavaScript 也在不斷髮展。每年,該語言都會通過新功能變得更加強大,使開發人員能夠編寫更具表現力和簡潔的代碼。 本葡萄今天就為大家介紹ES13中添加的最新功能,並查看其用法示例以更好地理解它們。 1.類 在ES13之前,類字段只能在構造函數中聲明。與許多其他語言不同,無法在類的最外層作用域中聲明或定義它們。 class Car { constructo
Nickname 葡萄城技術團隊
2024 年 6 月 26 日,第 127 屆 Ecma 大會批准了 ECMAScript 2024 語言規範,這意味着它現在正式成為標準。 https://github.com/tc39/ecma262/releases 1. Group By 分組 Map.groupBy() 將可迭代對象分組為一個新的 Map,Map中的 key由回調提供: Map.groupBy([0, -5, 3, -
Nickname 前端蛋卷
ECMAScript 2024 (ES15) 引入了一個極具潛力的新特性:Map.groupBy(),它大大簡化了數據分組的操作。無論是在處理數組、對象,還是更復雜的業務邏輯中,分組操作都是開發中常見的需求。本文將通過詳細的技術案例和代碼展示,為你剖析 Map.groupBy() 的強大之處。 什麼是 Map.groupBy()? Map.groupBy() 是 JavaScript 新增的靜態
Nickname 李遊Leo
ECMAScript 2024 帶來了一些不錯的新特性,其中 Promise.withResolvers 是一個備受關注的新增方法。這一方法極大地簡化了開發者在手動創建 Promise 時管理 resolve 和 reject 的複雜性。 本文將詳細介紹 Promise.withResolvers 的設計背景、使用方式,並通過多個技術案例展示其在實際開發中的潛力。 背景與問題 在日常開發中,我們
Nickname 李遊Leo
ECMAScript 2024 (ES15)標準引入了新的正則表達式標誌 /v,這一新增功能不僅優化了多行匹配的處理,還增加了對特殊字符匹配的支持。這一變革對於需要處理複雜文本數據的應用場景尤為重要,比如日誌分析、代碼審核等。接下來,本文將深入探討 /v 標誌的實際應用價值,並通過多個編程案例來展示其強大的實際應用能力。 /v 標誌的技術背景與應用 正則表達式作為開發者的有力工具,經常被用於字符
Nickname 李遊Leo
ECMAScript 2024 引入了一個新的字符串實例方法:String.prototype.isWellFormed。這一新增功能是為了幫助開發者更容易地驗證字符串是否為有效的 Unicode 文本。本文將詳細介紹這一方法的使用場景、實現原理及其在實際應用中的價值。 String.prototype.isWellFormed:概念與應用 String.prototype.isWellForm
Nickname 李遊Leo
Hey, 我是 沉浸式趣談 本文首發於【沉浸式趣談】,我的個人博客 https://yaolifeng.com 也同步更新。 轉載請在文章開頭註明出處和版權信息。 如果本文對您有所幫助,請 點贊、評論、轉發,支持一下,謝謝! 聊到異步,Promise 大家肯定都不陌生,是咱們處理異步操作的神器 不過呢,就算有 Promise,有時候處理一些既可能是同步又可能是異步的函數,或者那種隨時可
Nickname 沉浸式趣談