原创 ES11版本新特性

在上個月(2020.6),es11的特性已經確定了,具體的提案戳這 stage4提案 下面來簡單看看es11新增了什麼特性吧 1.BigInt 我們知道,js 能表示的安全整數範圍是-(2^53-1)至 2^53-1,這是由 js 存儲數

原创 leetcode刷題記錄(13)

1.刪除鏈表中的節點  *簡單 題目:請編寫一個函數,使其可以刪除某個鏈表中給定的(非末尾)節點,你將只被給定要求被刪除的節點。 題目沒有描述清楚。函數入參是鏈表中你要刪除的節點。 這題很簡單,把next的val值和next屬性都覆蓋當前

原创 leetcode刷題記錄(12)

1.2的冪  *簡單 題目:給定一個整數,編寫一個函數來判斷它是否是 2 的冪次方。 思路:這題算簡單的,遞歸、迭代、位運算都行 迭代: /** * @param {number} n * @return {boolean} */

原创 leetcode刷題記錄(11)

    1.存在重複元素 *簡單 題目: 給定一個整數數組,判斷是否存在重複元素。 如果任意一值在數組中出現至少兩次,函數返回 true 。如果數組中每個元素都不相同,則返回 false 。 思路:首先是用map來記錄 /** * @

原创 leetcode刷題記錄(8)

1.環形鏈表 題目: 給定一個鏈表,判斷鏈表中是否有環。 爲了表示給定鏈表中的環,我們使用整數 pos 來表示鏈表尾連接到鏈表中的位置(索引從 0 開始)。 如果 pos 是 -1,則在該鏈表中沒有環。 思路:先說最簡單的,用map記錄每

原创 leetcode刷題記錄(10)

1.快樂數 題目: 編寫一個算法來判斷一個數 n 是不是快樂數。 「快樂數」定義爲:對於一個正整數,每一次將該數替換爲它每個位置上的數字的平方和,然後重複這個過程直到這個數變爲 1,也可能是 無限循環 但始終變不到 1。如果 可以變爲  

原创 leetcode刷題記錄(9)

1.階乘後的0 題目:給定一個整數 n,返回 n! 結果尾數中零的數量。 思路:自習觀察可知,多少個0取決於數字的因數有多少個5(包括5自身),因爲5×2就有一個0,偶數肯定有2,偶數的數量比5更多,所以因數中5的數量就是階乘的結果中0的

原创 原生實現es5中的some、every、filter、reduce、map方法

之前還是菜鳥的時候,閒來無事,原生實現了幾個es5新增的、函數式編程理念的方法,現在放上來相當於記錄一下吧。 Array.prototype.map = function(fn) { let res = []

原创 從數組的遍歷方式談談代碼的語義性

一、前言 我之前的一篇文章介紹了幾種遍歷數組的方式,當然遠不止這幾種。不過今天想談的是別的東西,數組遍歷的具體方式和用法就不再贅述了。今天,我想以數組遍歷方式爲切入點,談一下代碼的語義性。當然,這只是個人理解。 首先,代碼語義性是什麼?從

原创 leetcode刷題記錄(6)

1.二叉樹的最大深度 題目: 給定一個二叉樹,找出其最大深度。 二叉樹的深度爲根節點到最遠葉子節點的最長路徑上的節點數。 說明: 葉子節點是指沒有子節點的節點。 思路:要得到深度,就要遍歷樹,高度是一層一層累加的,所以採用遞歸的辦法,逐級

原创 dart中final和const的區別

最近剛開始學習dart和flutter,在看語法的時候,看到了final和const這兩個關鍵字,含義比較像,開始不是十分理解他們的用途和區別。在這好好梳理一下。 一、相同點 1.聲明時必須要賦值    2.只能在初始化賦值一次,之後不能

原创 vue中nextTick的實現原理及自定義一個nextTick

一、介紹 vue中的nextTick(組件實例是$nextTick)方法是比較常見的,一般想延遲執行某個邏輯時可以使用它。之前我們一般是用setTimeout(0)來模擬類似的操作。 其實,在瀏覽器中nextTick是用es6中的Prom

原创 js設計模式之享元模式

一、簡單介紹 享元模式的核心是運用共享技術來有效支持大量細粒度的對象。享元模式要求將對象的屬性劃分爲內部屬性和外部屬性,它的目標是儘可能減少共享對象的數量。一般來說,內部屬性可以被一些對象共享,外部屬性取決於具體的場景,通常不會改變,根據

原创 關於代碼組織的一點思考

一、前言 開發能力,見於大,更見於小。大者,在於代碼所解決的需求難易;小者,在於代碼本身的組織方式。 最近經常失眠,想些亂七八糟的。幸好,其中相當一部分是在反思總結自己的不足。 越來越能體會到,代碼簡潔的重要性。寫出代碼的下一個階段,是對

原创 js設計模式之代理模式

一、簡單介紹 代理模式是爲一個對象提供一個代用品或佔位符,以便控制對它的訪問。 二、應用場景 nginx服務器將用戶的請求集中處理,分發給對應的服務器。同時,將服務器的響應分發給對應的客戶。代理模式的思想是類似的。 或許,你會覺得,這和策