Web 前端面試題 整理1

1. JS的基本數據類型:  String, number,null, Undefined, boolean,html

  引用數據類型:  date,array, function ,objectes6

  區別: 賦值給變量仍是地址編程

  null, undefined: 沒有包裝類型, 不能調用任何方法, boolean 內置方法segmentfault

2.  不改變原數組的API: concat, slice跨域

3. JS實現繼承的6種方式:數組

  詳情參考https://www.cnblogs.com/ayqy/p/4471638.htmlpromise

4. 反序列化 克隆瀏覽器

  JSON.parse(JSON.stringify(xm));服務器

5. 聲明提早cookie

 1 function Foo() {
 2     getName = function () { alert (1); };
 3     return this;
 4 }
 5 Foo.getName = function () { alert (2);};
 6 Foo.prototype.getName = function () { alert (3);};
 7 var getName = function () { alert (4);};
 8 function getName() { alert (5);}
 9 
10 // 請寫出如下輸出結果:
11 Foo.getName();
12 getName(); // 聲明提早
13 Foo().getName();
14 getName();
15 new Foo.getName();
16 new Foo().getName();
17 new new Foo().getName();
18 
19 //2, 4,1,1,2,3,3

參考:https://juejin.im/post/5b0562306fb9a07aaf3596c1

6. 瀏覽器存儲: localStorage,sessionStorage和cookie的區別

共同點: 都是保存在瀏覽器端, 僅同源可用的存儲方式

  1. 數據存儲方面:

  • cookie數據始終在同源的http請求中攜帶(即便不須要), 即 cookie在瀏覽器和服務器端來回傳遞,  cookie數據還要path路徑的概念,能夠限制cookie只屬於某個路徑下. 
  • sessionStorage和localStorage不會自動把數據傳遞給服務器, 僅在本地保存

  2. 數據存儲大小:

  • 存儲大小限制: cookie數據不超過4K, 由於http每次請求都帶着, 因此只適合存很小的數據,譬如會話標識
  • sessionStorage和localStorage也有限制,可是達到5M或更大

  3. 數據存儲的期限

  • cookie: 只在設置的cookie過時時間內有效, 即便窗口或瀏覽器關閉
  • sessionStorage: 僅在當前關閉瀏覽器以前有效
  • localStorage: 始終有效,本地存儲,做爲持久數據

  4. 做用域

  • cookie: 在全部同源窗口中共享, 瀏覽器不關閉,就存在
  • sessionStorage: 不在不一樣的瀏覽器窗口中共享, 即便是同一個頁面
  • localStorage: 在全部同源窗口中共享

7.跨域

https://blog.csdn.net/qq_35271556/article/details/80340102

 

8. JS繼承的8種實現

https://www.cnblogs.com/ayqy/p/4471638.html

 

9. CSRF攻擊:http://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html

閉包

原型,原型鏈

瀏覽器的迴流與重繪(reflow&repaint)

 

8. Promise的使用及原理

Promise是ES6加入的新特性, 用於更合理地解決異步編程的問題. 用法:http://es6.ruanyifeng.com/#docs/promise

30分鐘,讓你完全明白Promise原理 :https://segmentfault.com/a/1190000009478377

 

待續....

相關文章
相關標籤/搜索