@前端

動態 列表
@aqiongbei

javascript中的動態集合NodeList&HTMLCollection

不知道你有沒有在控制枱見到過類似這樣的輸出 我們會發現,同樣都是獲取元素的代碼,為啥一個是NodeList,一個是HTMLCollection。 那麼這倆是啥?又有啥區別,本篇文章我們就聊聊這個。 NodeList NodeList對象是節點的集合(類數組)。通常是由屬性,如Node.childNodes 和 方法(如document.querySelectorAll) 返回的

aqiongbei 頭像

@aqiongbei

昵稱 aqiongbei

@xiangjiaochihuanggua

理解為什麼要給useEffect聲明依賴

在使用useEffect、useCallback這些hooks,為什麼還要寫依賴數組呢,不寫這些依賴,React還給你警告。 下面我就來分享一下自己的理解 聲明依賴的目的:防止函數的閉包特性產生意外的錯誤 前言 在b站看到一個up用JS實現紅綠燈,我就試着自己也寫一個。 目的是想要它每個1秒跳轉到下一個燈。 紅 = 綠 = 黃 = 紅 = 綠 = 黃 這樣的順序 代碼 但是

xiangjiaochihuanggua 頭像

@xiangjiaochihuanggua

昵稱 香蕉吃黃瓜

@beckyyyy

閉包是什麼,有什麼用途

這是上月面試碰到的一道面試題,作為一個有着十年開發經驗七年前端經驗的大齡青年,碰到這種沒有一點鋪墊的八股文,真的只想説一句毀滅吧。 記得以前剛做前端不久的時候,就在百度搜閉包,大多搜到的結果都説的是閉包是什麼樣子的,比如説在函數外部可以訪問到函數內部的變量,又或者説閉包會導致什麼問題,比如會影響GC回收。總之沒什麼標準説法,就好像現在網上的吐槽,你背面試題沒用,得和麪試官背的同一套才行,但是天知道

beckyyyy 頭像

@beckyyyy

昵稱 beckyyyy

@webinfoq

面試小冊:面試官經常問的十個棘手的 JavaScript 問題

1. 可變性 在 JavaScript 中有七種基本數據類型(string、number、boolean、undefined、symbol、bigint 和 null),這些都是不可變的。這意味着一旦分配了一個值,我們就無法修改它們,我們可以做的是將它重新分配給一個不同的值(不同的內存指針)。另一方面,其他數據類型(如 Object 和 Function)是可變的,這意味着我們可以修改同一內存指

webinfoq 頭像

@webinfoq

昵稱 破曉L

@apifox

JavaScript 閉包是什麼:深入瞭解

閉包是指在一個函數內部創建另一個函數,並且內部函數可以訪問外部函數的變量、參數以及其他內部函數,即使外部函數已經執行完畢。這種機制使得內部函數保留了對外部作用域的引用,即使外部作用域已經不再活躍。 為什麼閉包重要? 閉包在 JavaScript 中具有重要的用途和價值。它們可以用於創建私有變量、封裝邏輯、避免全局污染等方面。另外,閉包還允許你在函數之外操作局部變量,從而為代碼提供更大的靈活性和可

apifox 頭像

@apifox

昵稱 Apifox

@jungang

瞭解JavaScript閉包機制

介紹 JavaScript中的閉包是一種強大的概念,它允許我們在函數內部創建和訪問私有變量,並且可以在函數外部繼續使用這些變量。理解閉包的工作原理對於編寫高質量的JavaScript代碼至關重要。本文將深入探討JavaScript閉包的機制,並結合最佳實踐和代碼示例進行詳細説明。 什麼是閉包? 閉包是指函數能夠訪問並操作其詞法作用域外部的變量的能力。當一個函數內部定義了另一個函數,並且內部函數引用

jungang 頭像

@jungang

昵稱 jungang

@guisijun

聊一聊 JavaScript 中的作用域和閉包

哈嘍大家好,我是歸思君~ 一、引言 我們知道,作用域(Scope)就是代碼中變量和函數的可訪問的區域,這個區域中決定了變量和函數的生命週期。在當前的高級程序語言中,主要有詞法作用域(靜態作用域)和動態作用域兩種。 靜態作用域:其作用域是在編寫代碼時就已經確定好,靜態作用域是根據變量和函數在代碼中的位置來決定。函數尋找變量時,是在函數定義的位置中尋找,而不是調用的位置。現在大多數編程語言都採用的

guisijun 頭像

@guisijun

昵稱 歸思君

@dianliangxiaocheng_19854189632

點量雲流核心技術解析:構建高性能數字孿生的三大架構設計

當前,數字孿生正處於一場深刻的範式變革之中:其價值核心正從靜態的可視化,向動態的決策智能加速遷移。然而,這一進程正面臨一個根本性的挑戰:高精度模型所帶來的龐大計算需求,與終端側有限的本地算力之間,形成了一道難以逾越的鴻溝。此矛盾已成為制約數字孿生在廣度與深度上實現規模化應用的核心瓶頸。 在此背景下,基於雲端協同的實時渲染技術,正成為破局的關鍵——它並非簡單的遠程顯示,而是旨在徹底打破終端的物理限

dianliangxiaocheng_19854189632 頭像

@dianliangxiaocheng_19854189632

昵稱 點量實時雲渲染

@apifox

Less基礎使用秘籍,讓你的CSS更高效!

Less(Leaner Style Sheets 的縮寫) 是一門向後兼容的 CSS 擴展語言。,它擴展了CSS(層疊樣式表)的功能並提供了更靈活、更強大的樣式定義和管理機制。通過使用 Less,開發人員可以編寫可維護、可重用的樣式代碼,並以簡潔的語法實現複雜的樣式效果。本文將介紹 Less 的基本概念和特性,以及如何使用它來簡化 CSS 開發過程。想要學習更多的知識,可訪問 犀牛書 的 Less

apifox 頭像

@apifox

昵稱 Apifox

@moyuzai_zxp616510038

【十四】CSS3新特性

前言 本篇章主要講述CSS3新特性,如svg、canvans以及動畫。 面試回答 1.canvas畫圓:首先獲取canvas對象,設置好寬高,用getContext方法設置2d繪圖,然後用arc方法進行繪製,arc的參數分別是圓心的x,y座標、半徑、以x軸為基準的起始角度以及結束角度,這裏設置,0到2π即可。 知識點 1.SVG 參考博客:https://juejin.cn/post/684490

@moyuzai_zxp616510038

【十五】CSS性能

前言 本篇章來源於https://juejin.cn/post/7077347573740077069,內容只是經過咀嚼便於自己理解。 面試回答 1.重繪重排:簡單來説重繪就是改變某個節點的樣式,重排就是改變某些節點的佈局,比如元素尺寸變動、元素位置變動以及瀏覽器窗口變動。所以重排一定會引起重繪,而重繪不一定引起重排。減少重繪重排的方式主要是通過集中修改css來完成,比如將樣式統一放在clas

@haoqidewukong

vscode 如何支持 css-module 文件跳轉到類名?

背景 css module 是目前主流的 css 模塊化的解決方案。使用 css module 之後,我們可以將 css 類當作模塊變量引入到我們的 typescript (下述使用 "ts" 代指)文件中來作為樣式的引用。過去,由於 ts 無法識別 css module 中導出的變量,我們使用 css 模塊變量需要到 css 文件中找到對應的類名,再寫到 ts 文件中使用,容易出錯且影響了開發效

haoqidewukong 頭像

@haoqidewukong

昵稱 好奇de悟空

@muyouhuiyao

Transporter -- Weex 踩坑日記 (三)

Tab頁切換 完成固定footer佈局後,我想要在footer中添加幾個按鈕,來控制中間部分顯示的頁面,類似微信。因此我需要實現一個tab切換的功能,我這裏用到了Weex提供的slider組件。 template div class="wrapper" slider class="tab-container" auto-play="false" v-bind:index="sel" v

muyouhuiyao 頭像

@muyouhuiyao

昵稱 MUYOUHUIYAO

@qianxiaqingkong

年終盤點跨平台技術優劣勢對比(Hybrid、RN、Weex、Flutter)

跨平台技術發展的三個階段 第一階段是混合開發的web容器時代 為了解決原生開發的高成本、低效率,出現了Hybrid混合開發 原生中嵌入依託於瀏覽器的WebView Web瀏覽器中可以實現的需求在WebView中基本都可以實現 但是Web最大的問題是,它的性能和體驗與原生開發存在肉眼可感知的差異 因此並不適用於對性能和用户體驗要求較高的場景

qianxiaqingkong 頭像

@qianxiaqingkong

昵稱 蘭俊秋雨

@wbccb

【微前端】singleSpa&importHTMLEntry(流程圖)源碼解析

single-spa v5.9.3 通過輕量級路由劫持和狀態機設計,實現微前端的動態加載與隔離,主要實現 路由管理:hashchange、popstate、history.pushState、history.replaceState進行劫持,路由變化時,觸發 reroute() 子應用狀態管理:不同執行邏輯轉化不同的狀態,比如 加載流程:toLoadPromise→toBo

wbccb 頭像

@wbccb

昵稱 白邊

@wbccb

【微前端】qiankun v2.10.16(流程圖)源碼解析

整體核心流程 源碼分析 single-spa 存在以下主要的缺點 路由狀態管理不足:無法保持路由狀態,頁面刷新後路由狀態丟失 父子應用間的路由交互以來 postMessage 等方式,開發體驗差 未提供原生的 CSS 和 JS 沙箱隔離,可能導致樣式污染或者全局變量衝突 默認以來 webpack 的構建配置,其他構建工具需要改造後才能兼容 版本兼容性差,如果使用不同的 Vue 版本,

wbccb 頭像

@wbccb

昵稱 白邊

@chendongyuan

JavaScript 中的數組分組:array.groupBy()

JavaScript 中的數組分組:array.groupBy() 原文: https://dmitripavlutin.com/ja... 由於豐富的標準實用程序庫,許多開發人員喜歡 Ruby 編程語言。例如,Ruby 中的數組有大量的方法。 JavaScript 也逐步豐富了其關於字符串和數組的標準庫。例如,在之前的文章中,我描述了新的array.at()方法。 今天的主角是新的數組組提案(目

chendongyuan 頭像

@chendongyuan

昵稱 陳東民

@lewyon

javascript基本數據類型和對象類型歸檔

javascript的基本數據類型以及引用數據類型,基本數據類型在開發中經常會用到,包括作為變量使用,判斷數據類型來處理一些業務等 基本(簡單數據類型) undefined,Null,Boolean,Number,String 複雜的數據類型Object undefined undefined 類型只有一個值,即它本身,在使用var聲明變量但未給初始值時,這個變量的值為undefine

lewyon 頭像

@lewyon

昵稱 程序猿布歐

@lewyon

前端(react)上傳到阿里雲OSS存儲 實例

需求背景 由於現有的後台管理系統,上傳的視頻越來越大,加上上傳視頻較慢,後端小哥提出直接從前端上傳視頻或者其他文件到阿里雲OSS存儲。 阿里雲OSS 阿里雲OSS文檔介紹,這裏不做過多贅述 安裝 原本在最開始的時候,是使用node版本的SDK,最開始使用的[nodejs版本] 代碼如下 async function put() { try { let result

lewyon 頭像

@lewyon

昵稱 程序猿布歐

@lewyon

javaScript深拷貝和淺拷貝簡單梳理

在瞭解深拷貝和淺拷貝之前,我們先梳理一下: JavaScript中,分為基本數據類型(原始值)和複雜類型(對象),同時它們各自的數據類型細分下又有好幾種數據類型 基本數據類型 數字Number 字符串String 布爾Boolean Null Undefined Symbols BigInt 基本數據類型在內存當中,是存儲在棧Stack 在數據結構當中 棧在內存上的分配的空間生命週期很短,當變

lewyon 頭像

@lewyon

昵稱 程序猿布歐