原创 git命令

一、 回滾代碼 1.git reset HEAD^ 回退到上一個版本 2.git reset HEAD~n 回退到n次提交之前 3.git log git reset --hard commit_id(commit的sha碼,如下

原创 正則表達式——exec和match方法

exec和match,前者是用於檢索符合regexp的字符串,後者是在字符串內檢索指定的值,同樣返回字符串。 在用法上: match:可match字符串和正則 stringObject.match(searchvalue) string

原创 es6 generator知識點

//generator模擬next方法 function gener(arr){ var index=0; return{ next:function(){ return index<arr.length?{value:a

原创 手寫實現apply,call,bind和數組es5方法

1. apply方法(注意沒有傳context或者爲undefined或null或string,number類型時的上下文context) Function.prototype._apply=function(context){ if

原创 一些經典題目

1. js對象的最大深度 function findDeep(obj){ if(obj&&obj instanceof Object&&!(obj instanceof Array)){ let max=null; let f

原创 前端性能優化

1. 函數防抖(debounce) //函數防抖 var timer=null; window.onresize=function(){ clearTimeout(timer); timer=setTimeout(function(){

原创 《高性能JavaScript》學習總結

1. js引擎的執行過程 代碼執行時長(性能) 字符串的連接str+=a+b:內存中創建臨時字符串,將a+b的值賦值給臨時字符串,將臨時字符串和str相加,得到的結果賦值給str str=str+a+b:將a添加到str後進行連接,然後將

原创 js 事件循環理解

事件循環包括宏任務和微任務。 宏任務的優先級爲:setTimeout>setInterVal>setImmediate>I/O 微任務的優先級爲:promise.nextTick>promise>MutationObserver 下面舉例

原创 前端面試題彙總

1. react生命週期 2. diff算法和虛擬dom 3. 如何判斷用戶是從ios還是Android手機打開網頁 4. 跨域解決方案 5. promise和回調解決的問題及區別 6. 冒泡排序,快速排序,二分法 7. 數組去重(主要包

原创 git使用出現的問題

1. fatal: refusing to merge unrelated histories  (拒絕合併不相關的歷史) 解決方法:$git pull origin master –allow-unrelated-histories 然

原创 json序列化

JSON.stringify():用於將JavaScript對象序列化爲JSON字符串JSON.parse():將JSON字符串解析成JavaScript值JSON序列化時,可以接受3個參數:序列化對象,過濾器(數組或函數)、是否保留縮進

原创 瀏覽器緩存之Expires Etag Last-Modified max-age詳解

Expires   http/1.0中定義的header,是最基礎的瀏覽器緩存處理,表示資源在一定時間內從瀏覽器的緩存中獲取資源,不需要請求服務器獲取資源,從而達到快速獲取資源,緩解服務器壓力的目的。   在response的header

原创 關於JavaScript對象

      在javascript中對象是一種基本的數據類型,在數據結構上是一種散列表,可以看作是屬性的無序集合,除了原始值其他一切都是對象。它可以用來表示現實世界中或者我們大腦中抽象出來的客體,這和其他面向對象的編程語言有些類似,但js

原创 性能優化的一些措施

1. 使用最新的庫最新的庫進行了bug修復和優化2. 使用合適的選擇器以jquery爲例,提升性能的優先順序是:1)$("#content"),如果想找沒有設置id的元素,可以通過$("#content").find("div"),從最近

原创 exports和module.exports的區別

module.exports 初始值爲一個空對象 {}exports 是指向的 module.exports 的引用require() 返回的是 module.exports 而不是 exports我們經常看到這樣的寫法:exports