首先登場 - 的n00b的JavaScript在這裏,我也嘗試搜索這代表類似的概念,作爲一個我下面的東西,但如果我的搜索技能我無法找到任何useful..sorry是相當有限的。分配函數變量到另一個功能
我經歷雄辯JavaScript和「嵌套範圍」部分,有展示的功能範圍是如何工作的一些代碼;以下是代碼(以及一些我已經加入到實驗)
var landscape = function() {
var result = "";
var flat = function(size) {
for (var count = 0; count < size; count++)
result += "_";
};
var mountain = function(size) {
result += "/";
for (var count = 0; count < size; count++)
result += "'";
result += "\\";
};
// my nonsensical code -- begin
var myfunc = function(text) {
console.log("this is only a block of text -", text);
};
// my non sensical code -- end
flat(3);
mountain(4);
flat(6);
mountain(1);
flat(1);
// this is what I was trying to do and see what happens here..
mountain = myfunc("meh");
// end of my nonsense
return result;
};
console.log(landscape());
我明白,如果我的函數(myfunc
)如果我分配一個值result
那麼當result
在最後一行返回內,它會被改寫爲被分配給它的myfunc
我的問題在這裏,我想任何值是它究竟意味着能夠分配一個函數變量到另一個(mountain = myfunc
),是有現實世界的用法到這樣的「功能」?如果沒有,爲什麼Javascript允許這樣的任務?
您並未將功能分配給山區。你的代碼正在調用這個函數,因爲你的函數沒有返回任何東西,它會將undefined存儲到山中。 – epascarello
由於您沒有將函數變量賦值給另一個函數變量,因此您的問題沒有任何意義。也許你從書中錯誤地複製了代碼。 – Barmar