12
我使用JSHint,並得到了以下錯誤:以腳本爲目標的URL有什麼問題?
Script URL.
其中我注意到,由於發生在這一行有含javascript:...
URL字符串。
我知道JSHint抱怨說,因爲scripturl
選項已設置,並且由於我的代碼庫相當大,所以現在我必須先取消它。
不過,我不明白使用腳本URL的問題是什麼?
我使用JSHint,並得到了以下錯誤:以腳本爲目標的URL有什麼問題?
Script URL.
其中我注意到,由於發生在這一行有含javascript:...
URL字符串。
我知道JSHint抱怨說,因爲scripturl
選項已設置,並且由於我的代碼庫相當大,所以現在我必須先取消它。
不過,我不明白使用腳本URL的問題是什麼?
javascript:
網址是'eval is evil'的一部分。
爲了執行javascript:
URL,瀏覽器必須啓動JS解析器並解析URL的文本。
這是一個緩慢而昂貴的過程。
此外,組裝javascript:
URL(或包含源代碼的其他字符串)是一項棘手的任務,容易出現XSS漏洞。
最後,混合代碼和URL違反了內容和行爲(代碼)的分離。
如果您將腳本放在'
這是不好的做法。 – epascarello
@epascarello:他在問爲什麼。 – SLaks
因此,爲什麼我沒有把它作爲答案!你們真棒! – epascarello