国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

微一案筆試題分享

lijinke666 / 1207人閱讀

摘要:在頁面上進行各種操作,模擬用戶的使用情況。如果內存占用基本平穩,接近水平,就說明不存在內存泄漏。還從來沒操作過。。。。內心一度崩潰,真的是為了面試而面試。。建議大家不要裸辭。。如果覺得本文對你有所幫助,就一下吧大傳送之術我的博客

1 哪些操作會引起內存泄漏,如何發現 一些常見的內存泄露代碼
// 意外的全局變量
functuon foo () { bar = 1} //函數里直接對未定義的變量賦值,導致變量存在頂部Window中,內存垃圾無法回收

//閉包變量被引用導致無法被回收
function f() {
    var obj = { a: 2 }
    return obj;
}    
var a =  f()

//被遺忘的定時器

function Test()  {  
    this.obj= {};
    this.index = 1;
    this.timer = null;
    var cache = []; // 內部變量,內存隱患...
    this.timer = window.setInterval(() =>{
        this.index += 1; 
        this.obj = {
            val: "_timerxxxxxbbbbxx_" + this.index,
            junk: [...cache]
        };
        cache.push(this.obj);
    }, 1);  
    console.warn("create Test instance..");
}  
test = new Test(); // JS對象開啟定時器不斷分配內存


...

參考文章:

https://juejin.im/post/5a8e7f...

https://github.com/wengjq/Blo...

如何查看內存占用情況 web

googol控制臺 》 performance 面板 > 勾選 Memory
點擊左上角的錄制按鈕。
在頁面上進行各種操作,模擬用戶的使用情況。
如果內存占用基本平穩,接近水平,就說明不存在內存泄漏。反之,就是內存泄漏了。

node

console.log(process.memoryUsage()); //node

2 以下代碼輸出
typeof Vue
typeof React
typeof jQery    

function github Vue

object github React

function github Jquery

ps:話說我寫了這么久Vue。還從來沒操作過typeof vue。。。。

3 下面代碼輸出
class F {
  init () {
        console.log(1)
  }
}
var f = new F()

F.prototype.init = function () {
  console.log(2)
}

f.init() //2
4 如何在數組頭部、尾部、中部增加/刪除
頭部:unshift / shift

中部:splice / concat

尾部: push / pop

參考:https://developer.mozilla.org...

5 手寫防抖/節流 實現
function throttleAndDebounce(fn, delay, isThrottle) {
  let lastCallTime = 0, timer = null;
  return  (...args) => {
    if (isThrottle) {
      const now = Date.now()
      if (now - lastCallTime < delay) return
      lastCallTime = now
      fn(...args)
    } else {
      if (timer) clearTimeout(timer)
      timer = setTimeout( () => {
        fn(...args)
      }, delay)
    }
  }
}
6 filter/reduce 實現數組去重
var arr = [1,2,1]

arr.filter( (it, idx, arr) => {
  return arr.indexOf(it) === idx
})

// reduce
var reducer = (arr, cur) => {
  if ( arr.length === 0 || arr[arr.length - 1] !== cur) {
    arr.push(cur)
  }
  return arr
}
arr.sort().reduce(reducer, [])
7 原生實現 上傳base64 圖片

var file = document.getElementById("file").files[0]
var reader = new FileReader()
    reader.onload = function (e) {
      $.post("/upload" , { "base64": e.target.result } , function () {})
    }
    reader.readAsDataURL(file)
8 寫成3種前端下載文件方式

參考: https://segmentfault.com/a/11...

ps:這也算!!?瀏覽器打開。。。內心一度崩潰,真的是為了面試而面試。。

9 手寫promise 實現

參考:

https://www.jianshu.com/p/43d...

https://developer.mozilla.org...

10 vue實現數據綁定有什么缺陷?作者為什么改用proxy實現

參考:https://zhuanlan.zhihu.com/p/...

后記

有些問題 我沒給出答案,只給出一些參考鏈接,主要是才疏學淺,不能給出一個絕對完美的答案;或者答案的內容量可以再寫一篇深入專研的文章,大家有什么好的意見或者文章錯誤可以留言補充;歡迎技術交流

ps:一年沒面試了第一次做這種筆試題,我表示一個筆都好久沒握過的人瑟瑟發抖。。。建議大家不要裸辭。。這個夏天有點冷。。。

如果覺得本文對你有所幫助,就star一下吧~大傳送之術! 我的博客Github

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/54878.html

相關文章

  • 微一案筆試題分享

    摘要:在頁面上進行各種操作,模擬用戶的使用情況。如果內存占用基本平穩,接近水平,就說明不存在內存泄漏。還從來沒操作過。。。。內心一度崩潰,真的是為了面試而面試。。建議大家不要裸辭。。如果覺得本文對你有所幫助,就一下吧大傳送之術我的博客 1 哪些操作會引起內存泄漏,如何發現 一些常見的內存泄露代碼 // 意外的全局變量 functuon foo () { bar = 1} //函數里直接對未定...

    anyway 評論0 收藏0
  • 2018年前端社招筆試題分享

    以下是2018年年初,面某公司的筆試題。為啥現在才分享出來,純粹是因為之前懶。只分享題,沒有答案。 1.請通過代碼實現下面的效果 function add(num){ var total = 0; var curryAdd = function(num){ total = total + num; return total; } r...

    dcr309duan 評論0 收藏0
  • Web前端經典面試試題(二)

    摘要:上次由于時間有限只分享了一部分的前端面試題,所以本篇繼續分享前端經典面試試題一棧和隊列的區別棧的插入和刪除操作都是在一端進行的,而隊列的操作卻是在兩端進行的。 上次由于時間有限只分享了一部分的前端面試題,所以本篇繼續分享前端經典面試試題 一. 棧和隊列的區別? 棧的插入和刪除操作都是在一端進行的,而隊列的操作卻是在兩端進行的。 隊列先進先出,棧先進后出。 棧只允許在表尾一端進行插入和刪...

    rickchen 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<