我試着寫自調用函數的代碼在Javascript:自我調用函數的JavaScript
var ello = ("ello");
obj = (function myFunc(){var elem= []["H" + ello]["world"]["!" + "!"]();
return elem;
}, "as");
test = myFunc();
但在我收到此錯誤信息的最後一行:
- myFunc的是未定義
我試着寫自調用函數的代碼在Javascript:自我調用函數的JavaScript
var ello = ("ello");
obj = (function myFunc(){var elem= []["H" + ello]["world"]["!" + "!"]();
return elem;
}, "as");
test = myFunc();
但在我收到此錯誤信息的最後一行:
您尚未編寫自調用函數。
你已經寫了一個命名的函數表達式。
命名函數表達式生成具有相同名稱的變量,他們只內自己的範圍(相對於它的作用與產生在範圍相同的名稱,其中被宣佈功能的變量聲明)。
爲了調用函數表達式,您必須立即調用它(通過跟在()
之後),或者將其賦值給變量或屬性以稍後調用。你既沒有做(當你在它前面有一個賦值操作符時,逗號操作符之後意味着字符串"as"
被賦值)。
(請注意,當你調用它,你寫的函數將引發錯誤這是沒有意義的。)
Ak。我誤以爲是功能的一部分。 – Quentin
這裏是一個自我調用函數的例子:
var ello = 'ello';
var result = function() { return 'H' + ello}()
console.log(result) // outputs > Hello
我可以通過閱讀這些代碼並不能說明你試圖達到的目標。你必須解釋你要做什麼,因爲代碼本身看起來不像任何東西。 –
爲什麼你在函數聲明周圍使用括號,這個'''''''! +「!」]();'只是無稽之談。 – Yerken
代碼中有相當多的錯誤和不必要的括號,並且該函數不是自調用的。正如Sergui所說,你需要準確地說明你認爲代碼應該做什麼步驟。 – Rhumborl