原创 常見的幾種實現數據雙向綁定的做法

常見的幾種雙向綁定的做法 * 發佈者-訂閱者模式(backbone.js) * 髒值檢查 (angular.js) * 數據劫持(vue.js) 發佈者-訂閱者模式 一般通過sub,pub的方式實現數據和視圖的綁定監聽,更新數據方式

原创 JavaScript閉包的優缺點和特性

使用閉包主要是爲了使用私有的方法和變量 優點是可以避免全局變量的污染 缺點是閉包會一直存在與內存,會增加內存使用量,還有可能造成內存泄漏 閉包特性: 函數嵌套函數 參數和變量不會被垃圾回收機制回收 函數內部可是引用外部的參數和變量

原创 Vuex學習記錄各屬性詳解以及使用方式

1.1 組件之間共享數據的方式 父向子傳值: v-bind屬性綁定 子向父傳值: v-on 事件綁定 兄弟組件之間共享數據: EventBus $on 接受數據的那個組件 $emit 發送數據的那個組件 1.2 Vu

原创 Vuex學習記錄

1.1 組件之間共享數據的方式 父向子傳值: v-bind屬性綁定 子向父傳值: v-on 事件綁定 兄弟組件之間共享數據: EventBus $on 接受數據的那個組件 $emit 發送數據的那個組件 1.2 Vu

原创 leetcode JavaScript水桶容積最大

傳入一個數組, 右邊減去左邊索引的差值 爲寬 左邊和右邊數值小的一個爲高 求水桶容積最大,也就是求 寬*高 最大的情況 可以想象成要給座標系,索引爲x軸,數值爲y軸,問:哪一個組合的封閉空間面積最大 解決辦法一 let arr = [1

原创 JavaScript 基於數組實現棧結構

// Method 方法,和某一個對象實例有聯繫的 // function 函數 // 封裝棧類 function Stack() { //棧中的屬性 this.items = []; //棧的相關操作 //1、添加一個新元

原创 leetcode JavaScript 跳躍遊戲

給定一個非負整數數組,你最初位於數組的第一個位置 數組的每個元素代表你在該位置可以跳躍的最大長度   判斷你是否能夠到達最後一個位置   [3,3,1,1,4] true let arr = [3,3,1,1,4] //一 va

原创 記錄JavaScript變量對調的七種方法

臨時變量 let a = 3, b = 5, c = b; b = a; a = c; 加減法 var a = 3, b = 5; a = a + b; //a=3+5=8 b = a - b; //b

原创 JavaScript中Null和undefined的區別

null 是一個表示 “無” 的對象,轉爲數值爲 0 。 undefined 是一個表示 “無” 的原始值,轉爲數值爲 NaN。 當聲明的變量還未被初始化時,變量的默認值爲undefined。 null 用來表示尚未存在的對象,常用來表

原创 輸入URL到頁面加載顯示過程的細節

發送一個URL請求,不管這個URL是web頁面的URL還是web頁面上每個資源的URL,瀏覽器都會開啓一個線程來處理這個請求,同時在遠程DNS服務器上啓動一個DNS查詢,這能使瀏覽器獲得請求對應的IP地址。 瀏覽器與遠程服務器通過TCP

原创 對前端重構的理解

在不改變外部行爲的前提下,簡化結構、添加可讀性,而在網站前端保持一致的行爲,也就是在不改變ui的情況下,對網站進行優化 表格佈局改爲DIV+CSS 兼容各種現代瀏覽器 對移動端的體驗優化 優化SEO 減少代碼耦合 代碼彈性 遵守統一的代

原创 JavaScript 原型對象學習記錄,js new一個對象的過程

JavaScript 數據類型分爲 基本類型,引用類型 基本類型: string,number,Boolean,object,null,undefined 引用類型: String,Number,Boolean,Object,Functi

原创 JavaScript小數精度問題 0.1+0.2

JavaScript是2進制存儲的,且存儲長度是有限的 0.1+0.2 0.1 轉換爲二進制   0.1*2=0.2       0 0.2*2=0.4       0 0.4*2=0.8      0     -------- 0.8*

原创 JavaScript == 和 === 常見題目分析

 ==  相等運算符  會對左右兩邊的值進行類型轉換 ===   全等運算符   則不會進行類型轉換   eg: 3==3     true   number 3 3===3   true  number  3 3=="3"   tru

原创 JavaScript運算符typeof與instanceof學習記錄

JavaScript中typeof 檢測數據類型,輸出類型的名稱 JavaScript有五種簡單數據類型 Undefined,Null,Boolean,Number,String 複雜數據類型 Object 常見的檢測結果 t