依稀記得個大概,順序有可能不正確,就當做記錄吧,順便查缺補漏。
1、涉及Vue.js。具體的忘了。
2、用js寫出一個冒泡排序算法。
解析:1.比較相鄰的兩個元素,如果前一個比后一個大,則交換位置。
2.第一輪的時候最后一個元素應該是最大的一個。
3.按照步驟一的方法進行相鄰兩個元素的比較,這個時候由於最后一個元素已經是最大的了,所以最后一個元素不用比較。
function bubbleSort(array){ var len=array.length; var temp; for(var i=0;i<len-1;i++){ for(var j=0;j<len-1-i;j++){ if(array[j]>array[j+1]){ temp=array[j]; array[j]=array[j+1]; array[j+1]=temp; } } } return array; }
var arr=[3,6,2,9,10,32,1];
console.log(arr);
bubbleSort(arr);
console.log(arr);
3、CSS中的選擇器的優先級是怎么樣的?如何優化選擇器?
行內樣式(權重為1000) > id選擇器(權重為100) > class類選擇器 (權重為10) > 標簽選擇器(權重為1)
4、前端頁面的優化方法有哪些?有什么優化工具?
優化方法:
1、減少Http請求,優化加載速度。
a、合並文件:將多個Script合成一個文件,將多個CSS文件合成一個文件;
b、使用“雪碧圖”CSS SPrites將背景圖整合到一張圖片中,通過坐標來實現對背景進行定位;
c、減少DOM數量。
2、CSS:
a、避免使用CSS表達式;
b、避免使用@import引入css文件,使用link形式引入;
c、在頭部head中引入CSS樣式表文件。因為如果把CSS文件放在底部,大部分瀏覽器會現下載內容,但是不能顯示出來,因為CSS在最底部。
3、Javascript
a、去除重復的腳本;
b、盡量減少DOM的訪問;
c、JS腳本文件在底部body之前或者之后引入;
d、將JS、CSS文件進行壓縮,去除中間的換行和空格等無用內容,減小體積,且注意JS和CSS文件的個數。
4、圖片部分
a、優化圖片
b、不要使用HTML縮放圖片,即不要在HTML中對圖片進行設置高度和寬度;
c、使用小且可以存儲的favicon.ico圖標
5、cookies
a、給cookies減肥;
b、清除不必要的cookies
c、保證cookies盡量小。
優化工具:
5、使用HTML5寫出一個頁面,包含頭部、頁頭、頁腳、文字內容和圖片。
<DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <header> <h1>頭部</h1> </header> <nav> <ul> <li>Home</li> <li>About</li> <li>Contact</li> </ul> </nav> <section> <h2>Content is loading……</h2> <article> <p>Writing something……</p> </article> </section> <footer> <p><a href="https://i.cnblogs.com/">https://i.cnblogs.com/</a><p> </footer> </body> </html>
6、創建子類Child,使用原型和構造函數的方式繼承父類People的方法,並調用say函數說出姓名和年齡。
function People(name,age){
this.name=name;
this.age=age;
this.say=function(){
alert("我的名字是:"+this.name+"我今年"+this.age+"歲!");
};
}
7、寫出ajax(跨域使用框架,但需說明使用了何種框架)的跨域異步獲取json數據的方法。可以使用javascript進行跨域異步post數據嗎?
var url="http://www.37.com";
$.ajax(function(){ type:"get"; url:"http://www.37.com"; dataType:"jsonp"; jsonp:"jsoncallback"; success:function(data){ if(data.errorCode){ alert("查詢失敗,錯誤碼為:"+result.errorCode); return; } alert(data); } error:function(){ alert("查詢失敗!"); } });
8、寫出日期“2016-06-03”……的正則表達式(要寫的挺多的,具體的記不清了)
9、給input添加如下樣式(CSS3):
背景為圖片1.jpg,背景顏色為藍色;長度200px;高度50px;文字居中顯示,邊框為5像素虛線黑色;邊框為5像素圓角,文字陰影,模糊。
10、對數組testArray進行以下操作:
a、從前面刪除一個數字;
b、從前面增加一個數字5;
c、給數組從小到大進行排序;
d、反轉數組;
e、在數組61之后加入62、63、64
var testArray=[3,4,61,8,1]; testArray.shift(); testArray.unshift(5); function compact(a,b){ return a-b; } testArray.sort(compact); testArray.reverse(); testArray.splice(testArray.indexOf(61)+1,0,62,63,64);
ps:如發現有誤,歡迎指出,謝謝!