前端筆試題彙總 2018/12/04 (1)
一、
console.log(data)
var data = "aaa";
var obj={
data:"bbb",
prop:{
data:"ccc",
fn:function(){
return this.data
}
}
}
console.log(obj.prop.fn())
var test = obj.prop.fn;
console.log(test());
輸出
undefined
ccc
aaa
二、前端優化
三、 setTimeout(function(){
console.log(2)
},0)
console.log(3)
輸出
3 2
四、
css選擇器
標籤名、id、class、後代、群組、組合、萬用字元、屬性、兄弟、子元素
可繼承屬性
font-size font-family color
優先順序
標籤名選擇器:1
class選擇器:10
id選擇器:100
規則
1、不可以越級比較
100個標籤名也小於一個class
2、style優先順序高
3、!inportant優先順序最高。慎用!
五、
大型網站css如何組織
1、基於不同頁面分離
2、基於頁面元素/塊
3、基於重複使用的標籤(from、table)
六、
垂直水平居中
1、定位(margin-left/margin-top)(已知元素寬高)
2、定位(transfrom:translate(-50%,-%50))(ie9+)
3、定位(left:0;top:0;right:0;bottom:0; margin:auto;)(ie7+)
4、彈性佈局
七、狀態碼
GET: 200 OK
POST: 201 Created 表示生成了新的資源
PUT: 200 OK
PATCH: 200 OK
DELETE: 204 No Content 表示資源已經不存在
202 Accepted 伺服器已經收到請求,但還未進行處理,會在未來再處理,通常用於非同步操作。
301狀態碼(永久重定向)
302狀態碼(暫時重定向,307也是這個含義)
主要是303 See Other,表示參考另一個 URL。
302和307用於GET請求,而303用於POST、PUT和DELETE請求。收到303以後,瀏覽器不會自動跳轉,而會讓使用者自己決定下一步怎麼辦。
400 Bad Request:伺服器不理解客戶端的請求,未做任何處理。
401 Unauthorized:使用者未提供身份驗證憑據,或者沒有通過身份驗證。
403 Forbidden:使用者通過了身份驗證,但是不具有訪問資源所需的許可權。
404 Not Found:所請求的資源不存在,或不可用。
405 Method Not Allowed:使用者已經通過身份驗證,但是所用的 HTTP 方法不在他的許可權之內。
410 Gone:所請求的資源已從這個地址轉移,不再可用。
415 Unsupported Media Type:客戶端要求的返回格式不支援。比如,API 只能返回 JSON 格式,但是客戶端要求返回 XML 格式。
422 Unprocessable Entity :客戶端上傳的附件無法處理,導致請求失敗。
429 Too Many Requests:客戶端的請求次數超過限額。
500 Internal Server Error:客戶端請求有效,伺服器處理時發生了意外。
503 Service Unavailable:伺服器無法處理請求,一般用於網站維護狀態。
八、
九、
window.location.href(設定或獲取整個 URL 為字串)
返回:http://i.cnblogs.com/EditPosts.aspx?opt=1
window.location.protocol(設定或獲取 URL 的協議部分)
返回:http:
window.location.host(設定或獲取 URL 的主機部分)
返回:i.cnblogs.com
window.location.port(設定或獲取與 URL 關聯的埠號碼)
返回:空字元(如果採用預設的80埠(update:即使添加了:80),那麼返回值並不是預設的80而是空字元)
window.location.pathname(設定或獲取與 URL 的路徑部分(就是檔案地址))
返回:/EditPosts.aspx
window.location.search(設定或獲取 href 屬性中跟在問號後面的部分)
返回:?opt=1
一、正則法
二、split拆分法
三、指定取
四、單個引數的獲取方法