js - tips點

JSON.stringify(function (){})
// undefined

class Obj {
	constructor (){
	}
	get () {
		console.log(1);
	}
}

typeof Obj
// undefined

JSON.stringify(Obj);
// undefined

script一般是同步加載
script動態加載是異步(有時候我們需要編輯邏輯在加載的情況)
xhr傳統ajax請求屬於同步(需要將請求內容再重新寫入script標籤中,內聯)

有時候我們既需要請求是動態加載,又需要能夠按順序執行,因爲爲了避免後者存在對前者加載腳本對調用先執行而出錯。這個時候可以採用兼容xhr的請求方案或者使用ducoment.write的方案。

如何打亂一個數組元素序列?
利用隨機函數與打亂數組長度取值,獲取值後剔除值再剩餘數組下隨機取數。
// 這裏的arr的parse,stringify轉換後將實現深拷貝,不影響原數組。
因此可以不停的使用事件去play生成某個數組的隨機數組。

var playStart = function (arr) {
  arr = JSON.parse(JSON.stringify(arr));
  var result = [];
  var len = arr.length;
  var index = -1;
  while(len){
    index = Math.floor(Math.random()*len);
    result.push(arr.splice(index,1)[0]);
    --len;
  }
  console.log(result);
};

幾種模塊化,amd, cmd, commonjs的區別?

瀏覽器渲染過程

深複製實現?
1、通過新定義變量一一拷貝
2、通過非直接賦值的方式-取被複制對象值轉成字符串再轉成對象的方式可實現,,distObj = JSON.parse(JSON.stringify(sourceObj));

移動端不同設備適配,flex佈局?

fetch方法,以及它相比傳統請求的區別?

單向和雙向數據流的區別?

如何處理node服務多併發?

個人對於工程化的思想和理解?

多端統一框架以及不足之處?

2019的技術展望?

個人已有技術棧以及歸納總結,漏則補全?

bind方法實現和原理,返回一個對象對某個函數的對象this調用。

深複製的實現和性能
字符串去空trim, str.replace(/^\s+ | \s+$/g, ‘’);
實例對象的prototype指向, obj.prototype 爲null, obj 通過__proto__指向父原型F.prototype, 父原型F.prototype的__proto__指向祖父Object.prototype。
如何實現一個括符的匹配

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章