@Javascript

動態 列表
@icecreamlj

gulp來處理html、css、js資源啦

gulp 一般用於處理自動化任務,默認情況無法處理模塊化,也不會用於大型項目,但它可以使用各種插件來編譯 html、css、js 等資源。 不清楚如何使用 gulp 開啓任務的朋友可以參考 gulp使用指南 處理html 處理 html 資源使用到 gulp-htmlmin 這個插件,和 webpack中使用到的html-webpack-plugin 比較相似。 // gulpfile.js co

icecreamlj 頭像

@icecreamlj

昵稱 一顆冰淇淋

@huobaodechahu

保姆級教程:寫出自己的移動應用和小程序(篇六)

上期文章我們學習瞭如何寫出小程序的樣式內容。今天我們來看一下如何在小程序中使用 js ,即在小程序中使用腳本內容處理內容或樣式的改變。 小程序中的 JS 是如何跟 WXML 以及 WXSS 關聯起來的:組織方式關聯 以這個 view 頁面為例,在小程序代碼的組織方式中, WXML, WXSS 以及 JS 的文件名必須是命名一致的,否則將會產生錯誤。如下: 為了方便講解,我們直接使用了微信開發者工具

huobaodechahu 頭像

@huobaodechahu

昵稱 火爆的茶壺

@thjjames

編寫babel的插件

前言 Babel 是一個通用的多功能的 JavaScript 編譯器,讓一些新版本的語法或者語法糖可以在低版本的瀏覽器上跑起來。 它有三個主要處理步驟 Parse - Transform - Generate。 在 Transform 轉換過程中通過將插件(或預設)應用到配置文件來啓用代碼轉換。 AST 編寫 Babel 插件非常複雜,需要有相當的基礎知識,在講插件之前必須得提起 AS

thjjames 頭像

@thjjames

昵稱 小皇帝James

@jinjidedacong

ES13的11個超讚的新屬性

聲明:本文為翻譯文章,原文為11 Amazing New JavaScript Features in ES13 像其他語言一樣,JavaScript也在不斷迭代和進化。JS每年都會加入很多新的功能來讓自己變得越發強大,也正是這樣,我們開發者才能寫出更加表意和準確的代碼。 在這篇文章中我們會通過一些例子來看一下最新的ECMAScript 2022(ES13)給我們開發者帶來的11個超讚的新功能。

jinjidedacong 頭像

@jinjidedacong

昵稱 進擊的大葱

@congjunhua

JavaScript的對象、原型、類和繼承

前言 HTML萬物皆標籤。 CSS萬物皆盒。 JavaScript萬物皆對象。 對象 JavaScript對象的本質是數據和功能的集合,語法上表現為鍵值對的集合。 鍵 對象的鍵可以理解為變量名。 值 對象的值的類型可以是任意數據類型。 鍵值對 鍵和值之間用:相連。 多組鍵值對之間用,分割。 let profile = { name: '吳彥祖', age: 48, char

congjunhua 頭像

@congjunhua

昵稱 從君華

@woxiaomaoshihuaihuai

vue動態組件綁定動態屬性和方法的小tips

當使用多 tab 內容頁時,動態組件是一件非常好用的利器。但是循環動態組件會有個問題,那就是不同組件綁定不同的屬性值和方法,全部寫在組件內固然是一種方法,就是不方便管理和查看,所以以下是單獨聲明的技巧小 tips。 切換的tabs常量 const TABS = [ { label: 'tab1', compo: 'RankingList', props: [

woxiaomaoshihuaihuai 頭像

@woxiaomaoshihuaihuai

昵稱 phoenixhg

@snowwolfarden

Day 92/100 原型鏈的繼承屬性

1、JS中的繼承 當談到繼承時,JavaScript 只有一種結構:對象。每個實例對象(object)都有一個私有屬性(稱之為 proto )指向它的構造函數的原型對象(prototype)。 該原型對象也有一個自己的原型對象(__proto__),層層向上直到一個對象的原型對象為 null。根據定義,null 沒有原型,並作為這個原型鏈中的最後一個環節。 2、繼承屬性 JavaScript

snowwolfarden 頭像

@snowwolfarden

昵稱 SnowWolfArden

@anchen_5c17815319fb5

如何理解JS原型和原型鏈

每個函數(箭頭函數除外)都有prototype屬性,該屬性指向原型。 每個對象(null除外)都有__proto__屬性,指向了創建了該對象的構造函數的原型。(注:函數也是對象) 對象可以通過__proto__來尋找不屬於該對象的屬性,__proto__將對象連接起來組成了原型鏈。 理解原型和原型鏈,下面這張圖很重要: 根據上面這張圖,能夠得到如下等式: // 一、對象的__p

@crow_5c1708a9c847d

一個關於React數據不可變的無聊問題

對於一個React的開發者來説不知道你有沒有想過為什麼React追求數據不可變這個範式; 一個月前我想過一個問題如果我在使用useState這個hooks的時候傳入的是一個改變後的引用類型對象會發生什麼? 例如: import {useState} from "react" function App() { const [list,setList] = useState([0,1,2])

crow_5c1708a9c847d 頭像

@crow_5c1708a9c847d

昵稱 龍騎士尹道長

@shawnphang

如何優雅地編寫一個高逼格的JS插件?

在一個風和日麗的早晨,我正悠閒地喝着Coffe,突然領導向我走來,我趕緊熟練地切出VSCode,淡定自若地問:領導,什麼事?領導拍了拍我的肩膀:你上次封裝的方法同事跟我反饋使用起來很不錯啊,你不如做成JS插件給大家用吧。我放下了手中的馬克杯,甩了一下眼前僅剩的幾根劉海:沒問題啊,小Case!隨即開始摸魚.... 原型鏈寫法 要開始編寫插件就得先了解JS模塊化,早期的模塊化是利用了函數自執行來實現的

shawnphang 頭像

@shawnphang

昵稱 茶無味的一天

@fsjohnhuang

React魔法堂:size-sensor源碼略讀

前言 echarts-for-react在對echarts進行輕量級封裝的基礎上,額外提供圖表尺寸自適應容器尺寸的這小而實用的功能,而這功能的背後就是本文想介紹的size-sensor了。 源碼介紹 size-sensor源碼十分精簡,主要是對原生APIResizeObserver方案和object元素方案進行檢測和API統一化而已。 代碼首先會檢測當前運行時是否支持原生APIResizeObse

fsjohnhuang 頭像

@fsjohnhuang

昵稱 肥仔John

@ohhhcky

NPM 自動更新版本號

本文首發於 YFun's Blog。 前言 ChenYFan 大佬的文章:SpeedUp!使用黑科技為你的網站提速 有提到過將 Hexo 博客的全部靜態文件上傳至 NPM 達到加速效果。 但是 NPM 版本號不能重複,而且為了精準命中緩存和防止邊緣 @latest 緩存過長,就必須指定版本號。 本人在 我的圖牀解決方案 一文中使用的方法是 npm version patch。 但這個方法也

ohhhcky 頭像

@ohhhcky

昵稱 OhhhCKY

@beckyyyy

閉包是什麼,有什麼用途

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

beckyyyy 頭像

@beckyyyy

昵稱 beckyyyy

@yanyue404

Promise 實現 (從簡易版到符合Promise A+規範)

前言 手寫 Promise 是面試的時候大家都逃避的送命題,在學些瞭解後發現通過實現源碼更能將新一代的異步方案理解的通透,知其然知其所以然的運用。 如果直接將源碼貼到此處勢必不能有更大的收穫,下面就按實現版本來看做簡要分析。 回顧 Promise Promise 是 CommonJS 提出來的這一種規範,有多個版本,在 ES6 當中已經納入規範,原生支持 Promise 對象,非 ES6 環境可以

yanyue404 頭像

@yanyue404

昵稱 RainBow

@aaaaaajie

RxJS 全面解析

又名:RxJS “道” 與 “術” 前言 打開此文的小夥伴想必對 RxJS 已經有了或多或少的瞭解,如果沒有倒也無妨,因為下面會從零開始講起;如果你帶着幾個問題來翻閲,本人也希望此文可以帶你找到答案。 温馨提示:文章內容較長,建議收藏反覆觀看。 概覽 從我個人的學習 RxJS 的歷程來看,最開始是“照貓畫虎”能夠基本使用,隨後是研究部分操作符和使用場景,最後瞭解產生背景、設計思想以及實現原理

aaaaaajie 頭像

@aaaaaajie

昵稱 阿杰

@beckyyyy

單頁應用的優缺點

上月面試海康威視的一道面試題。 單頁應用,即常説的SPA,Single Page Application,從名稱上就可以看出它最大的特點,就是單頁面,即只有一個頁面;相對的就是多頁面,即MPA,Multi-Page Application。 在多頁面的情況下,我們在切換不同頁面時,需要向服務器發送多次請求來獲取不同頁面內容,在獲取到內容後,整個瀏覽器視口需要被重新渲染,而等待服務器的響應需要一定的

beckyyyy 頭像

@beckyyyy

昵稱 beckyyyy

@limingcan562

JS繼承面試的時候怎麼説?答應我,不要再死記硬背了好嗎?

前言 JS繼承這塊,ES6已經有class很香的語法糖實現了,ES6之前那些實現繼承的方法真的又多又長,説句心裏話,能不學真的不想再學,但是沒辦法,面試還是要搞你呀,所以這兩天看回ES6之前的繼承,發現還是蠻有意思的。寫這篇文章也是對自己的一個梳理總結,也希望能幫助到大家弄懂繼承這塊,這樣就不需要再死記硬背八股文,面試自由發揮就好。 JS的繼承,核心就是靠原型鏈完成。如果大家對原型鏈還不是很

limingcan562 頭像

@limingcan562

昵稱 limingcan

@mi2nagemao

js原型鏈圖解

參考《你不知道的JavaScript(上卷)》,按照自己理解做的對象關聯關係圖解,不保真。 細節重申 對象通過原型鏈(__proto__)查找屬性,一直到找到為止; new 的主要作用是創建新對象,其__proto__指向函數的 prototype,以及關聯this到新對象; Object.create 創建新對象,並將其__proto__指向舊對象。 依圖校驗 function Foo

mi2nagemao 頭像

@mi2nagemao

昵稱 夜遊神

@beckyyyy

cookie、session、web storage

cookie與session的區別 首先,使用cookie和session的目的都是為了跟蹤記錄用户狀態,因為http協議是無狀態的協議,而某些場景服務端需要記錄用户的狀態,如購物車,需要來識別具體的用户,服務端就為特定的用户創建特定的session,用於標識並跟蹤用户; 其次,cookie和session都是會話技術,session保存在服務端,cookie保存在客户端,服務端無法知道請求對應哪

beckyyyy 頭像

@beckyyyy

昵稱 beckyyyy