2018拼多多學霸批前端筆試題記錄

藍莓_酸牛乳發表於2018-08-01

選擇提基本上都是牛客裡面刷過的

1、arr =[0,1,2] arr[10] = 10,

arr.filter(function(val){ return val === 'undefined' })

2、
(function(x){
    return(function(y){
        console.log(x)
    })(2)
})(1)
複製程式碼

多選題就記住一道:

1、排序演算法的穩定性

簡答題

1、如何將陣列

obj=[{id:1,parent:null,child:2},{id:12,parent:1,child:3},{id:13,parent:2,child:null}] 採用遞迴轉化成

let obj2 = {obj:{
    id:1,
    parent:null,
    child:{
        id:2,
        parent:1,
        child:{
            id:3,
            parent:2,
            child:null
        }
    }
}}
複製程式碼
2、當程式碼var a = new A('twsta')執行時會發生什麼?
3、使用typeof bar === 'object'來判斷bar是不是物件有什麼問題,應該怎樣處理?
4、CSS實現動畫的方式有哪些?
  • 過度動畫(transition):
    transition:all 0 ease 0;
    transition-property:規定設定過渡效果的 CSS 屬性的名稱。
    transition-duration:規定完成過渡效果需要多少秒或毫秒。
    transition-timing-function:規定速度效果的速度曲線。
    transition-delay:定義過渡效果何時開始。
    eg:
    div {
        width:100px;
        transition: width 2s;
        -moz-transition: width 2s; /* Firefox 4 */
        -webkit-transition: width 2s; /* Safari 和 Chrome */
        -o-transition: width 2s; /* Opera */
    }
複製程式碼
  • animation
複製程式碼
5、找出陣列中的重複元素並輸出
   //輸出陣列中的重複元素
       function findRepeat(arr){
           if(arr.length <= 1){
               return arr
           }
           let copyArr = []
           let obj = {}
           let repeatArr = []
           //錯在這一步上,重複的屬性只能看作一個,怎麼會區別對待呢,傻子
           // for(let i = 0;i<arr.length;i++){
           //     obj[arr[i]] = 0
           // }
           arr.forEach(function(val,index){
               if(!obj[val]){
                   copyArr.push(val)
                   obj[val] = 1
               }else{
                   obj[val] = obj[val] + 1
               }
           })
           Object.keys(obj).forEach(function (val,index){
               if(obj[val] > 1){
                   repeatArr.push(parseInt(val))
               }
           })
           return repeatArr
       },
複製程式碼
6、display:none和visibility:hidden的區別
7、深拷貝與淺拷貝各是什麼?如何實現一個深拷貝?
8、如何合併兩個陣列?
9、編寫一個輸出日誌的函式,並在並在輸入內容前加(app)字首,

eg:log("hello World) => (app)Hello World log("hello,World) => (app)Hello World

相關文章