關(guān)于 JavaScript 中的 forEach 循環(huán)你不知道的 8 件事
在深入學(xué)習(xí) JavaScript 之后,很快就能意識到兩者之間存在差異。本文就來介紹一下關(guān)于 forEach 循環(huán)不知道的 8 個(gè)知識點(diǎn)。
在深入學(xué)習(xí) JavaScript 之后,很快就能意識到兩者之間存在差異。本文就來介紹一下關(guān)于 forEach 循環(huán)不知道的 8 個(gè)知識點(diǎn)。
JavaScript 在 ES6 中,引入了一個(gè)新的對象類型 Proxy,它可以用來代理另一個(gè)對象,并可以在代理過程中攔截、覆蓋和定制對象的操作。Proxy 對象封裝另一個(gè)對象并充當(dāng)中間人,其提供了一個(gè)捕捉器函數(shù),可以在代理對象上攔截所有的操作,包括訪問屬性、賦值屬性、函數(shù)調(diào)用等等。通過攔截這些操作,可以對代理對象進(jìn)行定制和控制。
XML 和 JSON 是序列化語言格式的類型,一起學(xué)習(xí)一下基本的知識,什么是XML?XML和JSON有什么區(qū)別?相互之間如何轉(zhuǎn)換?
在 JavaScript 中,深拷貝指的是創(chuàng)建一個(gè)新的對象,這個(gè)新的對象與原始對象完全獨(dú)立,沒有任何共享的屬性或者數(shù)據(jù),它們不共享同一塊內(nèi)存地址。
在 JavaScript 中,可以使用 substr()、slice() 和 substring() 方法截取字符串。
TypeScript 提供靜態(tài)的類型檢查,提供類的語法糖(這一點(diǎn)是繼承了 ES6 的實(shí)現(xiàn)),讓程序更加規(guī)范和緊湊,為使用 JavaScript 開發(fā)大型項(xiàng)目提供了必要的條件。本文介紹 3 個(gè)加強(qiáng)理解的面試問題。
對于深拷貝,最容易也應(yīng)該是常見的方法是使用 JSON.parse() + JSON.stringify() ,還有一個(gè)借助第三方腳本庫 lodash ,其中方法 cloneDeep 可以實(shí)現(xiàn)深拷貝。現(xiàn)在可以使用原生的 structuredClone() 方法。
instanceof 運(yùn)算符用于檢測構(gòu)造函數(shù)的 prototype 屬性是否出現(xiàn)在某個(gè)實(shí)例對象的原型鏈上,即用于檢查一個(gè)對象是否屬于某個(gè)特定的構(gòu)造函數(shù)或其子類。
雖然在 TypeScript 類中定義 constructor 方法不是必須的,但是通常建議在類中使用 constructor 方法,因?yàn)樗幸韵聨讉€(gè)優(yōu)點(diǎn):初始化類的屬性、進(jìn)行屬性校驗(yàn)和初始化、依賴注入、繼承時(shí)的初始化
Set 是 ES6 中新增的一種集合類型,類似于數(shù)組,但其成員的值是唯一的,即不會(huì)重復(fù)。關(guān)于Set,可以閱讀《JavaScript中的Set數(shù)據(jù)操作:交集、差集、交集、對稱差集》。Set 對象是一個(gè)構(gòu)造函數(shù),可以使用 new 關(guān)鍵字來創(chuàng)建一個(gè) Set 實(shí)例。
在 Web 開發(fā)中,文件下載功能是一個(gè)非常常見的功能。在本文中,將介紹在 JavaScript 中如何實(shí)現(xiàn)下載文件。
當(dāng)需要從 JavaScript 中的數(shù)組中獲取最后一個(gè)元素時(shí),有多種選擇,本文將提供 3 種可用方法。
ES7 引入 async/await 允許開發(fā)人員編寫看起來像同步的異步 JavaScript 代碼。在當(dāng)前的 JavaScript 版本中,還可以使用 Promises,這些功能都是為了簡化異步流程并避免回調(diào)地獄。
JavaScript 定時(shí)器是實(shí)現(xiàn)循環(huán)行為甚至觸發(fā)延遲操作的好功能。無論有什么基于時(shí)間的邏輯,定時(shí)器都可以提供支持。在 JavaScript 中有兩個(gè)定時(shí)器函數(shù):setTimeout 和 setInterval 。接下來看看有哪些定時(shí)器以及它們是如何工作的。
字符串是每種編程語言的基本組成部分,而 JavaScript 具有許多強(qiáng)大的內(nèi)置函數(shù),本文復(fù)習(xí) 16 個(gè)字符串操作方法:includes、toUpperCase、toLocaleLowerCase、search、indexOf、slice、replace、split等,比較match和matchAll的區(qū)別。
styled-components 是一個(gè)流行的 React 庫,一個(gè) CSS in JS 樣式框架,它使用 JavaScript 中的標(biāo)記模板字面量和 CSS 的強(qiáng)大功能來提供一個(gè)平臺,允許編寫實(shí)際的 CSS 來設(shè)置 React 組件的樣式,同時(shí)兼顧開發(fā)人員體驗(yàn)和性能。
層疊樣式表 (Cascading Style Sheets,縮寫為 CSS),是一種樣式表語言,用來描述 HTML 或 XML(包括如 SVG、MathML、XHTML 之類的 XML 分支語言)文檔的呈現(xiàn)。CSS 描述了在屏幕、紙質(zhì)、音頻等其它媒體上的元素應(yīng)該如何被渲染的問題。
復(fù)習(xí)瀏覽器渲染機(jī)制,瀏覽器會(huì)阻止網(wǎng)頁的某些呈現(xiàn),直到首先加載某些資源,同時(shí)異步加載其他資源。
復(fù)習(xí)與前端開發(fā)相關(guān)的一些網(wǎng)絡(luò)知識,簡單介紹網(wǎng)絡(luò)七層模型 OSI、HTTPS狀態(tài)碼、GET和POST方法區(qū)別、HTTP/1.0和HTTP/1.1有什么區(qū)別等。
JSON.stringify() 方法將一個(gè) JavaScript 對象或值轉(zhuǎn)換為 JSON 字符串,如果指定了一個(gè) replacer 函數(shù),則可以選擇性地替換值,或者指定的 replacer 是數(shù)組,則可選擇性地僅包含數(shù)組指定的屬性。