1. 程式人生 > >分享前端面試中被問到的幾個問題

分享前端面試中被問到的幾個問題

一.怎麼讓Chrome支援小於12px 的文字?

  • 這個我們在做移動端的時候,設計師圖片上的文字假如是10px,我們實現在網頁上之後。往往設計師回來找我們,這個字型能小一些嗎?我設計的是10px?為啥是12px?其實我們都知道,谷歌Chrome最小字型是12px,不管你設定成8px還是10px,在瀏覽器中只會顯示12px,那麼如何解決這個坑爹的問題呢?

我們的做法是:

  • 針對chrome瀏覽器,加webkit字首,用transform:scale()這個屬性進行放縮.
<!DOCTYPE html>
<html>
    <head>
        <meta
charset="UTF-8">
<title></title> <style type="text/css"> span{ font-size: 12px; display: inline-block; -webkit-transform:scale(0.8); } </style> </head> <body> <span
>
測試10px</span> </body> </html>

二、如何修改chrome記住密碼後自動填充表單的黃色背景?

  • 使用-webkit-autofill這個屬性進行修改.
/*通過input : -webkit-autofill來進行修改!*/
input:-webkit-autofill {
    background-color: #FAFFBD;
    background-image: none;
    color: #000;
}

三、寫出最簡單的去重方式
1、es6的new Set()方式

let array=[0,3
,4,5,3,4,7,8,2,2,5,4,6,7,8,0,2,0,90]; [...new Set(array)]

2、es5的Array filter()

[1,3,4,5,1,2,3,3,4,8,90,3,0,5,4,0].filter(function(elem,index,Array){
   return index === Array.indexOf(elem);
})

四、陣列物件全等比較

// 這些可以
'abc' === 'abc' // true
1 === 1 // true
// 然而這些不行
[1,2,3] === [1,2,3] // false
{a: 1} === {a: 1} // false
{} === {} // false

因為[1,2,3]和[1,2,3]是兩個不同的陣列,只是它們的元素碰巧相同。因此,不能簡單的通過===來判斷

五、經典面試題目

const Greeters = []
for (var i = 0 ; i < 10 ; i++) {
  Greeters.push(function () { return console.log(i) })
}
Greeters[0]() // 10
Greeters[1]() // 10
Greeters[2]() // 10

把 var 改成 let試試!

const Greeters = []
for (let i = 0 ; i < 10 ; i++) {
  Greeters.push(function () { return console.log(i) })
}
Greeters[0]() // 0
Greeters[1]() // 1
Greeters[2]() // 2

六、Math.min()比Math.max()大

Math.min() < Math.max() // false
Math.min() > Math.max() // true
//因為Math.min() 返回 Infinity, 而 Math.max()返回 -Infinity。

七、實現點選文字,文字後面radio選中效果

<form>  
    <label for="male">Male</label>
    <input type="radio" name="sex" id="male" />
    <br />  
    <label for="female">Female</label>
    <input type="radio" name="sex" id="female" />
</form>

八、網站中,圖片檔案(jpg,png,gif),如何點選下載?而非點選預覽?

  • 我們點選下載按鈕,只會預覽“baidu.jpg”這張圖片,並不會出現下載框,另存為那種?那麼我們如何做呢?
<a href="https://www.baidu.com/favicon.ico" download >下載</a>  
<!-- 我們還可以指定檔名稱,如下寫法: -->
<a href="tupiandizhi.jpg" download="baidu" ></a>