筆試題第一波~~~
mysql筆試題(1)
1.varchar VS char
varchar 是變長,最多儲存65535位元組
char 是定長,最多儲存255位元組
1英文字元=1個位元組
1漢字=2個位元組
1繁體漢字=3個位元組
varchar(50) 存放50字元
2.開啟網路地址並響應的過程:
DNS伺服器獲取IP地址並返回給瀏覽器,瀏覽器再通過IP地址向web伺服器傳送請求,web伺服器從檔案伺服器獲取網頁中所需要的檔案,從資料庫獲取網頁所需要的資料,最後將完整的網頁響應給瀏覽器
3.continue和break
都是用來控制迴圈體
continue跳過當前一次迴圈,繼續執行下一次迴圈
break 直接終止整個迴圈
4.typeof 返回的型別
1 string,number,boolean,undefined,object,function
5.NodeJS的優點和缺點
優點:NodeJS設計思想是以事件驅動,非同步,非堵塞 I/O 密集型為核心,非常適合高併發請求,編寫的方式與 js 一致,因此客戶端和伺服器可用同一種語言.
缺點:不適合CPU密集型任務的開發
6.img標記屬於--->行內元素
7.隱藏網頁中的元素
display:none; 脫離文件流,不佔頁面的空間
opacity:0; 不顯示,但是佔頁面位置,可以新增事件
visibility:hidden; 不顯示,佔頁面空間
8.改變預設計算框模型的方式屬性---->box-sizing:border-box
9:transition VS animation
animation和transition大部分的屬性是相同的,都是隨事件改變元素的屬性值
區別:transition需要觸發一個事件才能改變屬性,而animation不需要觸發任何事件的情況下也會隨時間改變屬性值.transition只要2幀,from ...to ,animation是由多個transition組合到一起的,一般多幀
10.網頁中實現元素水平垂直居中
1.絕對定位+margin
position:absolute; left:50%; top:50%; margin-left:-25%;
margin-top:-25%;
2. 彈性佈局+設定容器的水平和垂直居中對齊屬性
1 display:flex; 2 justify-content:center; 3 align-items:center;
3..絕對定位+transform
position:absolute;
left:50%;
top:50%;
transform:translate(-width/2,-hight/2)
11.改變頁面元素的定位方式
float,relative,absolute,fixed
float:讓多個塊級元素在一行中顯示
relative:相對定位,相對於自己的位置做一個微調.
absolute:絕對定位,堆疊順序,彈出選單
fixed:相對於body去固定元素在頁面中的位置
12.非同步請求請求資料的步驟
4步:
建立非同步物件(xhr) , 繫結監聽事件(onreadystatechange) , 開啟連線 (open(method,url,boolean)) , 傳送請求 (send(body/null))
//建立xhr var xhr=createXhr(); //繫結監聽 xhr.onreadystatechange=function(){ if(xhr.readyState==4&xhr.status==200){ //var result=xhr.responseText; var result=xhr.responseXML; console.log(result); } } //開啟連線 xhr.open("get","student.xml",true) xhr.send(null);
13.JSON
JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。js物件的一種表現方式 , js物件的資料格式表現出來的字串.
JSON字串轉換為JS物件:JSON.parse()
JS物件轉換為JSON字串:JSON.stringify(obj);
14.狀態碼
301:永久重定向
302:臨時重定向
304:請求資源為被修改,命中快取
404:(未找到) 伺服器找不到請求的頁面
400:(錯誤請求) 伺服器不理解請求的語法
403:(禁止) 伺服器拒絕了請求
15.jQuery中$的原理
$其實是建立jQuery型別子物件的意思,包括以下四種情況
1.如果傳入選擇器,$會查詢DOM元素,並儲存jQuery物件
優化:如果傳入的選擇器簡單,則呼叫按HTML查詢API,如果傳入選擇器複雜,則呼叫按選擇器查詢的API
2.如果傳入DOM元素,$會直接封裝DOM元素進jQuery物件
3.如果傳入HTML片段,$會建立新元素,封裝進jQuery物件
4.如果傳入function函式,$會繫結DOM內容載入後執行的事件
16.響應式網頁
1.媒體查詢技術(css3)
2.彈性佈局+流式佈局
3.相對尺寸
4.宣告 viewport 元標籤
17.HTML查詢和選擇器查詢的區別
按照HTML返回的動態集合,按選擇器查詢返回非動態集合
效率不同:HTML查詢的效率高,按選擇器查詢效率較低
應用性:當調劑複雜是,按html查詢比較繁瑣,按選擇器查詢更簡潔
18.DOM優化
1.查詢時:一個條件-->html;多個條件--->選擇器
2.新增時:子元素先新增到父元素,再將父元素整體新增
3.修改時:同時修改多個元素的內容和樣式使用 innerHTML,class
4.事件繫結時,儘量減少冒泡的個數
19.實現動畫的方式
css:transition animation : 效率高,無法控制互動行為
js:定時器 $().animate() : 互動行為強,效率較低
requestAnamationFrame() : 相容性不高
20.vue的生命週期
8個 建立前後,載入前後,更新前後,銷燬前後
1.建立(create)階段:建立元件物件,和模型資料物件 new Vue({ data: { ... } }) Vue.component("xxx",{ data:function(){ return { ...}}}) 2. 掛載(mount)階段:掃描真實DOM樹,建立虛擬DOM樹,並繫結模型中的資料到檢視中 new Vue({ data: { } , el:"#app"}) Vue.component("xxx",{ data:function(){ return { ...}}, template:"#template" }) 3. 更新(update)階段:只要模型資料發生變化,就更新元件的內容和DOM樹 4. 銷燬(destroy)階段:主動呼叫了$destory()函式,銷燬元件時