原创 執行x.call.call發生了什麼(JS)

call方法(Function.prototype.call)是用來改變某個方法被調用時的this指向。 官方描述:使用一個指定的 this 值和單獨給出的一個或多個參數來調用一個函數。 首先,call的常規用法(如下): const o

原创 JS 柯里化函數隨筆

模擬實現 const slice = Array.prototype.slice; const curryMaker = function(fn, len) { const curriedArgs = slice.call(argum

原创 判斷數據是否類數組

檢測函數(臨時記錄) function isArrayLikeObj(obj) { // For document.all if (getTypeString(obj) === 'HTMLAllCollection') {

原创 自定義toString()方法檢測對象類型時的返回值[object x](JS)

如果想通過 Object.prototype.toString() 方法來檢測對象類型,則需要以 Function.prototype.call() 或者 Function.prototype.apply() 的形式來調用 toString

原创 埃拉託斯特尼篩法(埃式篩,篩選數字n範圍內的素數)

  古希臘數學家 埃拉托色尼/埃拉託斯特尼(Eratosthenes)除了在2000多年前就發現地球不是平的之外,還發明瞭本文中討論的埃式篩(一種通過篩除一個素數所有的倍數,從而識別素數方法)。   什麼是素數: 素數一般指質數。質數是指

原创 JS數據結構-循環隊列

代碼示例: /** * 循環隊列 * @description 使用數組作爲容器,headIdx和tailBackIdx分別指向隊首元素和隊尾後一元素的位置並保持自增(通過與k取模獲得實際位置) * @param {number}

原创 JS: 模擬async/await語法糖

不熟悉生成器對象的小夥伴,可查看:Generator、Generator.prototype.next 基於Generator和Promise實現 async(async是自帶自動執行器的Generator迭代器函數) 模擬函數: /**

原创 JS版數據結構-鏈表

鏈表代碼隨筆(JS) /** 鏈表節點 */ class Node { el = null; next = null; constructor(el = null, next = null) { this.el =

原创 JS中構造函數與Class類的區別

Function vs Class 寫法上有區別,本質上無差別   class Clz { a() {} b() {} }   Class的數據類型: typeof Clz; // 'function' Class對象本身:

原创 處理Vite項目首屏加載響應遲緩和二次刷新的問題

由於Vite採用的bundless的dev server方案,且按原生ESM的形式按需爲瀏覽器動態提供源碼,也就形成了Vite冷啓動迅速,但首屏加載遲緩(加載過程中進行解析、編譯等)的問題。 另外,在第一次啓動時,如果在首頁通過點擊等交互操

原创 Soon is not as good as now

Where you stumble and fall, there you will find gold. 你在哪裏跌倒,就會在哪裏找到金子。 Some people could look at a mud puddle and see a

原创 使用WangEditor4+KityFormula處理公式編輯業務(小記)

一開始,直接套用了mirror29 在github的樣板代碼,整體挺好用的(感謝mirror29)。不過在具體的集成過程中,自己調整了原有的一些交互細節並處理了一些特定操作可能會觸發的錯誤,已提交了github上wangeditor4-ki

原创 如果給Array.prototype.fill()方法傳入1個引用類型的填充對象

先來看下fill方法的介紹 Array.prototype.fill()fill() 方法用一個固定值填充一個數組中從起始索引到終止索引內的全部元素(不包括終止索引)。   再來看下該方法的入參細節 /** * @param {*} v

原创 探索JS中Object對象的key及key的排序

首先,JavaScript中Object對象的key均爲string類型的值。 不過Object對象可以接受任意類型的值作爲它的key,原因在於,我們爲某個Object對象設定key的過程中會觸發JavaScript的隱式類型轉換機制(調用

原创 生成 SSH key (Mac)

SSH百科: SSH 爲 Secure Shell 的縮寫,由 IETF 的網絡小組(Network Working Group)所制定。 SSH 是建立在應用層基礎上的安全協議,它是較可靠,專爲遠程登錄會話和其他網絡服務提供安全性的協議。