2019-03-14

1、行內(nèi)元素有哪些?塊級元素有哪些?他們的區(qū)別是什么?

行內(nèi)元素主要有:a b br i span input select
塊級元素主要有:div p h1 h2 h3 h4 form ul
行內(nèi)元素和塊級元素之間是可以通過display相互轉(zhuǎn)換的。
行內(nèi)元素特點(diǎn)
1、和其他元素都在一行上;
2、元素的高度、寬度、行高及頂部和底部邊距不可設(shè)置;
3、元素的寬度就是它包含的文字或圖片的寬度,不可改變。
塊級元素特點(diǎn)
1、每個塊級元素都從新的一行開始,并且其后的元素也另起一行。
2、元素的高度、寬度、行高以及頂和底邊距都可設(shè)置。
3、元素寬度在不設(shè)置的情況下,是它本身父容器的100%,除非設(shè)定一個寬度。

2、CSS3新增的偽類有哪些?

CSS3 主要新增了兩大類選擇器,分別是結(jié)構(gòu)偽類選擇器和UI偽類選擇器。
結(jié)構(gòu)偽類選擇器:
:root、:emptyonly-child、only-of-type
:nth-child(n):nth-last-child(n) 、:last-child
:nth-type(n)、:nth-last-of-type(n) 、:first-of-type、:last-of-type
UI偽類選擇器:
:enabled、:disabledchecked

3、CSS3的優(yōu)先級如何計算?

下面列表中,選擇器類型的優(yōu)先級是遞增的:
1、類型選擇器和** 偽元素**
2、類選擇器屬性選擇器,偽類
3、ID選擇器
4、!important規(guī)則。
sp1:通配符,關(guān)系選擇符(+, >, ~, ' ') 和 否定偽類:not()) 對優(yōu)先級沒有影響。(但是,在 :not() 內(nèi)部聲明的選擇器是會影響優(yōu)先級)。
sp2:給元素添加的內(nèi)聯(lián)樣式 (例如, style="font-weight:bold") 總會覆蓋外部樣式表的任何樣式 ,因此可看作是具有最高的優(yōu)先級。.

4、HTTP狀態(tài)碼都有哪些含義?(至少寫5個)

根據(jù)RFC規(guī)范,HTTP狀態(tài)碼主要分五大類,分別是1xx,2xx,3xx,4xx,5xx。
1xx:這一類型的狀態(tài)碼,代表請求已被接受,需要繼續(xù)處理。這類響應(yīng)是臨時響應(yīng),只包含狀態(tài)行和某些可選的響應(yīng)頭信息,并以空行結(jié)束。由于HTTP/1.0協(xié)議中沒有定義任何1xx狀態(tài)碼,所以除非在某些試驗條件下,服務(wù)器禁止向此類客戶端發(fā)送1xx響應(yīng)。
2xx:這一類型的狀態(tài)碼,代表請求已成功被服務(wù)器接收、理解、并接受。
3xx:這類狀態(tài)碼代表需要客戶端采取進(jìn)一步的操作才能完成請求。通常,這些狀態(tài)碼用來重定向,后續(xù)的請求地址(重定向目標(biāo))在本次響應(yīng)的Location域中指明。
4xx:這類的狀態(tài)碼代表了客戶端看起來可能發(fā)生了錯誤,妨礙了服務(wù)器的處理。
5xx:表示服務(wù)器無法完成明顯有效的請求。這類狀態(tài)碼代表了服務(wù)器在處理請求的過程中有錯誤或者異常狀態(tài)發(fā)生,也有可能是服務(wù)器意識到以當(dāng)前的軟硬件資源無法完成對請求的處理。

常見狀態(tài)碼:
200:OK(請求成功。)
302:Found(要求客戶端執(zhí)行臨時重定向。)
403:Forbidden(服務(wù)器已經(jīng)理解請求,但是拒絕執(zhí)行它)
404:Not Found(請求失敗,請求所希望得到的資源未被在服務(wù)器上發(fā)現(xiàn),但允許用戶的后續(xù)請求)
502:Bad Gateway(作為網(wǎng)關(guān)或者代理服務(wù)器工作的服務(wù)器嘗試執(zhí)行請求時,從上游服務(wù)器接收到無效的響應(yīng)。)

5、js的基本數(shù)據(jù)類型都哪些?

Undefined、Null、Boolean、Number、String、Symbol(ES6新增)、BigInt(ES10新增)

6、什么是JavaScript閉包?

閉包是函數(shù)和聲明該函數(shù)的詞法環(huán)境的組合。我的理解是,只要是函數(shù)的返回值是函數(shù),或者函數(shù)的參數(shù)是一個回調(diào)函數(shù),都可以理解這是一個閉包

7、Ajax和jsonp的區(qū)別?

具體區(qū)別參考文章:https://blog.csdn.net/qq_37604843/article/details/78654964

8、JavaScript面向?qū)ο笾欣^承如何實現(xiàn)?

JavaScript面向?qū)ο笾欣^承的實現(xiàn)方式有五種,分別是:
利用原型鏈、利用構(gòu)造函數(shù)、組合繼承、原型式繼承、寄生組合式繼承。

9、請實現(xiàn),鼠標(biāo)點(diǎn)擊任意標(biāo)簽,alert標(biāo)簽的名稱。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <p>這是p標(biāo)簽</p>
    <div>這是div標(biāo)簽</div>
    <span>這是span標(biāo)簽</span>
    <a href="#">這是a標(biāo)簽</a>
</body>

<script>
    var el = document.getElementsByTagName('body');
    el[0].onclick = function (event) {
        evt = event || window.event;
        var selected = evt.target || evt.srcElement;
        alert(selected.tagName);

    }
</script>

</html>

10、請使用css控制3個div,實現(xiàn)以下布局。(總高度310px,左100px,右200px,左側(cè)上面高度150px)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        .container {
            width: 310px;
            height: 310px;
            background-color: #ddd;
            position: relative;
        }

        .container > div {
            position: absolute;
        }
        .left {
            width: 100px;
            height: 150px;
            left: 0;
            background-color: #9400ff;
        }
        .right {
            width: 200px;
            height: 100%;
            right: 0;
            background-color: #94ff00;
        }
        .bottom {
            bottom: 0;
            background-color: #0094ff;
        }
    </style>
</head>
<body>
    <div class="container">
        <div class="left"></div>
        <div class="left bottom"></div>
        <div class="right"></div>
    </div>
</body>
</html>

11、實現(xiàn)點(diǎn)擊下面按鈕出現(xiàn)提示框,在點(diǎn)擊其他地方提示框消失。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        #msg {
            width: 180px;
            border: 1px solid #0094ff;
            height: 150px;
            display: none;
            background: #893844;
            position: absolute;
        }

        #btn {
            width: 182px;
            height: 35px;
            line-height: 35px;
            background: #0094ff;
            position: absolute;
            top: 350px;
            left: 300px;
        }
    </style>
</head>

<body>
    <div id="msg">盒子</div>
    <div id="btn">點(diǎn)擊按鈕顯示盒子</div>
</body>
<script>
    document.onclick = function (e) {
        e = e || event;
        var btn = document.getElementById("btn");
        var msg = document.getElementById("msg");
        var target = e.target || e.srcElement;
        if (target !== btn && target !== msg) {
            msg.style.display = "none";
            btn.innerText = "點(diǎn)擊按鈕顯示盒子";
        } else {
            msg.style.top = (btn.offsetTop - 160) + "px";
            msg.style.left = btn.offsetLeft + "px";
            msg.style.display = "block";
            btn.innerText = "點(diǎn)擊空白處隱藏盒子";
        }
    }
</script>

</html>

12、請詳細(xì)說你對vue聲明周期的理解。

具體詳見文章(寫的非常好):https://segmentfault.com/a/1190000008010666

13、編寫冒泡排序 var arr = [1,3,5,6,8,7,9,2]

 function bubblingSort(arr){
        var temp;
        for(var i=0;i<arr.length;i++){ 
            for(var j=0;j<arr.length-i-1;j++){ 
                if(arr[j]>arr[j+1]){
                    temp=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=temp;
                }
            }
        };
    return arr;
    }

    var arr = [1,3,5,6,8,7,9,2];

    var s=bubblingSort(arr);

    console.log(s);

14、vue中data,methods、computed、watch之間的區(qū)別。

沒有實例做支撐很難一句話說清楚,具體參考文章:https://blog.csdn.net/smartdt/article/details/75557369

15、vuex有哪幾種屬性?

vuex有State、Mutation、Action、Getter、Module五種屬性。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容