原创 安裝vue-cli的坑

Vue的腳手架搭建失敗點(vue-cli) webpack下載失敗 解決方法一:在node安裝成功前提下,將npm替換成cnpm 替換代碼:npm install -g cnpm --registry=https://regist

原创 js面向對象1:封裝

主旨:如何"封裝"數據和方法,以及如何從原型對象生成實例。 創建對象的方法 對象直接量 var book={ "main title":"javaScript", "for":"all audiences", author:{ f

原创 es6

let&const let:只作用於它被定義的那個作用塊 const:定義一個不能修改的常量 tip:在for循環中,設置循環變量的那部分是父作用域,循環體內部是單獨的一個子作用域,如: for (let i = 0; i < 3

原创 js:函數的調用

什麼是函數? 在js中函數是對象。 invocation(調用) 調用一個函數時,函數接受兩個附加的參數:this和arguments。參數this的初始化方式取決於調用的模式。一共有四種調用模式: 方法調用模式(the meth

原创 js面向對象2:構造函數的繼承

現在有個動物對象的構造函數 function Animal(){ this.species="動物"; } 和一個貓的構造函數 function Cat(name,color){     this.name = name

原创 圖解http:第二章

http協議:應用於客服端和服務器之間的通信。 http協議的應用類型: get:告訴服務器要獲取資源。 POST:傳輸實體主體 。 PUT:傳輸文件 PUT 方法用來傳輸文件。就像 FTP 協議的文件上傳一樣,要求在請 求報

原创 js面向對象3:非構造函數的繼承

什麼是非構造函數的繼承 A: var Chinese={ nation:'中國' } B: var Doctor={ career:'醫生' } 如何讓B繼承A呢? 也就是說如何生成一個“中國醫生”的對象。 object()

原创 圖解Http第五章:與http協作的Web服務器

用單臺虛擬主機實現多個域名 一臺服務器可以託管多個網址,因爲使用了虛擬主機的功能。 當客戶端發起請求其中a網址時,DNS解析域名後的ip地址和b網址相同。那麼要怎麼分辨客戶端要訪問的網址呢? 答:在發送http請求時,在Host首

原创 js:函數的遞歸

漢諾塔 var hanoi=function(n,a,b,c){ if(n>0){ hanoi(n-1,a,c,b); //將n-1個盤子由a-->b,以c爲緩衝 document.writeln('移動盤子'+n+'

原创 頭條面試題

TCP連接 一個包丟了怎麼處理 tcp協議關於發送數據包: 慢啓動(slow start)機制,開始時發送較慢,然後根據丟包情況判斷加快還是降低。 默認情況下,接受方每接受到兩個tcp數據包就要發送一個acknowledgemen

原创 css的優化

css的優化有哪些? 提高性能這塊 1.不使用@import。 2.避免使用複雜的選擇器,層級越少越好。 3利用繼承減少代碼量。 提高可維護性 1.命名和備註 2.提取重複樣式 方法論 oocss (object oriented

原创 http協議:一次請求

tcp: 握手過程中使用了 TCP 的標誌(flag) —— SYN(synchronize) 和 ACK(acknowledgement)。 發送端首先發送一個帶 SYN 標誌的數據包給對方。接收端收到後, 回傳一個帶有 SYN