原创 Illegal Buffer報錯(小程序開發解密encryptedData)

提出問題: 最近在搞一下小程序授權登錄(用戶註冊功能),在密鑰,appId等內容都沒問題的情況下,請求授權註冊接口等時候一直報錯 Illegal Buffer。 問題原因: 在解密encryptedData數據的時候,傳過來的數據裏面

原创 Node.js 更新Redis中key的過期時間

需求 最近有一個有趣的需求,用戶家庭賬號體系的建立,前提(小程序開發,前端無法檢測小程序徹底退出),家庭中的成員賬號A切換登錄之前還需要判斷另一個賬B號的最後使用時間,如果賬號A在兩個小時內登錄過,會對賬號A有一個提示,是否擠掉賬號B

原创 javascript過濾字符串中的符號和空格(正則)

網上搜了好多正則都不太好用,沒辦法自己寫了一個,已測試通過: let titleTranster = title.replace(/[\ |\s*(.*?)\s+$|\~|\`|\!|\@|\#|\$|\%|\^|\&

原创 Node.js中的執行順序(微任務與事件循環)

提出問題 在理解node.js異步時有一些不懂的地方,使用node.js的開發者一定都知道它是單線程的,異步不阻塞且高併發的一門語言,但是node.js在實現異步的時候,兩個異步任務開啓了,是誰快就誰先完成這麼簡單?還是說異步任務最後

原创 Android中透明度的使用(基礎)

前言: 開發過程中,設置控件的顏色是經常要做的,而UI設計師在有些時候會標出一定比例的透明度,那我們應該如何設置透明度和計算透明度呢? 顏色與透明度基本介紹 Android中的顏色值 一般都是遵循RGB/ARGB標準,一“#”開頭

原创 Node.js內存管理基礎講解

Node與V8 基本概念 V8是Node的JavaScript執行引擎,V8引擎實際是一個高性能虛擬機。Node在JavaScript的執行直接受益於V8,可以隨着V8的升級就能享受更好的性能或新的語言特性(如ES5和ES6)

原创 超詳細的redis學習(2)-進階篇

redis多數據庫 說明:一個redis實例可以包含多個數據庫,客戶端可以指定連接某個數據庫(與MySql客戶端我們創建多個數據庫類似)一個redis實例最多可以提供16個數據庫,下標是從0到15,默認連接的是第0號數據庫。 代碼相關

原创 超詳細的redis學習(1)-入門篇

什麼是Redis 基本概念 redis是一個開源的、使用C語言編寫的、支持網絡交互的、可基於內存也可持久化的Key-Value數據庫(非關係性數據庫)。 redis的優勢 速度快,因爲數據存在內存中,類似於HashMap,HashM

原创 面試系列之http協議講解預熱

前言 本篇文章主要講解http協議,無論是前端開發還是後端開發者,http協議都是必須要知道一個知識。 與Http協議密切相關的DNS,TCP,IP 我們在瀏覽器輸入一個地址後,計算機和瀏覽器從開始做了哪些事情,以chrome瀏覽器爲

原创 Lambda表達式在Android中的基本使用

Lambda定義 Lambda表達式是java8中新引入的特色功能。Lambda表達式本質上是一種匿名方法,它既沒有方法名,也既沒有訪問修飾符和返回類型,使用它來編寫代碼將會更加簡潔,也更加易讀。 Android中使用Lamdda表達式的

原创 javascript之原型鏈詳解

對象着手 在談原型鏈之前,先了解對象,萬物皆對象。 所有引用類型(函數,數組,對象)都擁有proto屬性(隱式原型) 所有函數擁有prototype屬性(顯式原型)(僅限函數) 原型對象:擁有prototype屬性的對象,在定義函數時就

原创 javascript中的閉包這一篇就夠了

什麼是閉包 維基百科中的概念 在計算機科學中,閉包(也稱詞法閉包或函數閉包)是指一個函數或函數的引用,與一個引用環境綁定在一起,這個引用環境是一個存儲該函數每個非局部變量(也叫自由變量)的表。 閉包,不同於一般的函數,它允許一個函數

原创 Android面試系列冷啓動優化

什麼是冷啓動? 冷啓動的定義 冷啓動就是在啓動應用前,系統中沒有該應用的任何進程信息時候的啓動(第一次打開應用,或者殺死了這個app進程後的啓動) 冷啓動/熱啓動的區別 熱啓動定義:用戶使用app返回鍵退出應用,然後馬上又重新啓動應用。

原创 Native與html5交互面試篇

前言 前面兩篇詳細講解了WebView的基本使用,以及在實際項目開發過程中的封裝(輪子的創建),本篇文章主要針對面試常問的幾個問題進行總結說明,讓大家在面試過程中遇到針對WebView相關的問題不那麼尷尬!以下內容均爲文字描述相關的代碼與

原创 Android面試系列多進程模式的運行機制分析

幾個基本概念 Android爲每一個應用分配一個獨立的虛擬機,或者說每一個進程都分配一個獨立的虛擬機,不同的虛擬機在內存分配上有不同的地址空間,這就導致不同的虛擬機訪問同一個類的對象會產生多分副本。 Android對每個進程分配了虛擬機