[英]Recieving an influx of errors when trying to complie my react project. I quite literally have no idea what it means or how to begin to fix it
[英]I have no idea Object(this) means
在https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/fill
有一條線就像
// Steps 1-2.
if (this == null) {
throw new TypeError('this is null or not defined');
}
var O = Object(this); // <- WHAT IS THIS???????????
// Steps 3-5.
var len = O.length >>> 0;
// Steps 6-7.
var start = arguments[1];
var relativeStart = start >> 0;
// Step 8.
var k = relativeStart < 0 ?
Math.max(len + relativeStart, 0) :
Math.min(relativeStart, len);
// Steps 9-10.
var end = arguments[2];
var relativeEnd = end === undefined ?
len : end >> 0;
// Step 11.
var final = relativeEnd < 0 ?
Math.max(len + relativeEnd, 0) :
Math.min(relativeEnd, len);
// Step 12.
while (k < final) {
O[k] = value;
k++;
}
// Step 13.
return O;
我找不到將O指定為對象的必要性(this)。
它是為了可讀性而編寫的還是有任何特定的分配原因?
正如對代碼的評論中所建議的那樣,本節將准確地對規范中記錄的第一步進行pollyfill。
- 設O為ToObject(此值)。
- ReturnIfAbrupt(O)。
雖然有點無序,但這是執行ToObject(this value)
的功能:
var O = Object(this);
基本上,如果在非對象上調用它,則應將非對象強制轉換為Object
。
例如,如果我們在本機支持此方法的JavaScript引擎中運行這些大多數無意義的代碼,我們會看到返回一個Number
對象實例。
Array.prototype.fill.call(123);
該線將確保來自polyfill的相同結果。
當參數已經是對象時,Object構造函數返回其參數。 如果它不是一個對象,它返回參數的“objectified”版本:一個String實例,如果它是一個字符串,一個Number實例,如果它是一個數字,等等。
有問題的功能是有點怪異,特別的價值this
通常是一個對象呢。 它沒有要,但你有種,有走出自己的方式去用的填充工具的內臟this
值是不是一個對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.