0
我試圖通過JQuery中的一個變量循環,並在以下Coffeescript中重新指定this
的值。JQuery - SyntaxError:保留字「this」不能被分配
$.each data.rows, ->
completion_time = [this[0], new Date(new Date('Jan 01 2000').getTime() + this[1])]
this = completion_time
然而,這會產生以下錯誤消息:
SyntaxError: reserved word "this" can't be assigned
在每次迭代的this
值看起來是這樣的:
["abc123", 12302103, 1230132, 1230123]
我試圖做的是重新分配它的值爲:
["abc123", 12302103]
我試着分配this.value
以及沒有骰子。有什麼建議麼?
@JaunMendes謝謝,這似乎已經完成了帽子戲法。爲什麼'this'不能被重新分配給別的東西有沒有特別的原因? – Noz
是的,因爲'this'指向對象本身,重新分配它只會用於你正在查看的變量。你需要對對象的引用來重新分配它,而JS沒有這些引用類型,它總是一個指向對象的指針,從來沒有指向指針的指針,如果這是有道理的。用不同的方式來解釋它,改變'this'不會改變所有現有的對同一個對象的引用。通過改變'this'而不是重新分配它,對象的所有其他引用都將受到影響 –
@CyleHunter考慮寫這個'this = null'是非感性的,你會使得對象失效與...一起工作 –