2010-05-21 114 views
0

有人能解釋一下這個功能是做在解釋的setState功能

var page = new Object(); 
page.testSearch.btnSearch.setState = function() { 
    this.disable(!(page.testSearch.searchString.value.trim().length > 1)); 
} 
+0

你使用任何JavaScript庫像Prototype.js或jQuery?如果沒有用一些HTML來查看更多的代碼,可能不可能知道你的代碼是幹什麼的。 – 2010-05-21 16:51:26

+0

Duplicate:http://stackoverflow.com/questions/2883894/whats-this-javascript-function-doing – 2010-05-21 16:53:04

+1

如果該代碼是逐字的,它似乎極不可能(\ *)的工作。如果你沒有在'page'上放置'testSearch'屬性,你不能指定'page.testSearch.someProperty'。 (\ *:如果在Object上有一些原型開發是可能的,但這不太可能,也不太可能。) – bobince 2010-05-21 17:02:46

回答

0

的代碼創建一個名爲頁面一個新的空的JavaScript對象。然後它將一個屬性添加到該對象(在這種情況下,它變成了一個函數)。看起來它依賴於另一個你沒有粘貼的函數,稱爲禁用(但我認爲我們可以假設它以某種方式禁用了某些東西!)如果page.testSearch.searchString中的文本短於1個字符。

它看起來對我來說,它的工作原理網頁上的表格。

必須說這種JavaScript編碼風格已經過時了,有些人可能會說這段代碼會更好地寫成對象字面符號

+0

如何用對象字面值重寫。謝謝 – Autolycus 2010-05-21 17:46:27