2016-12-14 37 views
-1

道歉,如果這之前已經問過,但我找不到這個特定的問題。Javascript String.prototype意外標記

我的任務是分析一些高度混淆和惡意的JS代碼。我試圖讓它在一分鐘內在虛擬機中運行,以便準確瞭解它到底是什麼,但是我在第一行遇到語法錯誤。

function String.prototype.x(){... 

從Chrome的開發者控制檯:

Uncaught SyntaxError: Unexpected token . 

紅色波浪線示出了誤差在第一點(之間字符串和原型)被拋出。說實話,我對JS的瞭解還不夠多,但我相信你們中的一個人會知道答案。它爲什麼會拋出,我能做些什麼來解決它?

+0

這是否回答幫助? http://stackoverflow.com/a/3630029/259889 – Sid

+0

你不能有這樣的函數命名點,使用'String.prototype.x = function(){}'而不是 – iHasCodeForU

+0

嘗試String.prototype.x = function(){//你的代碼} –

回答

1

String已經是一個類(內置的原型方法的功能),以創造其原型鏈方法,你必須使用如下

String.prototype.reverse = function(){ 
    return this.split('').reverse().join 
} 

"hello".reverse() // olleh 
+0

乾杯。排除了這個錯誤,現在我又遇到了另外一些圍繞着構造函數的問題。但這是混淆的範疇。非常好... –

+0

@I_GNU_it_all_along讓你在這方面變得很酷,這很好:)。樂於幫助 :) –