2016-02-12 35 views
0

我試圖編寫函數sayHello,它接受一個參數name。它應該返回一個串聯的字符串,即「Hello,name」。無法調用返回語句的函數

這裏是我的代碼

function sayHello(name) { 

    return "Hello " + name; 
} 
return sayHello; 

當我運行return sayHello,我看到以下內容:

SyntaxError: Illegal return statement 

當我運行sayHello

function sayHello(name) { 

    return "Hello " + name; 
} 
sayHello; 

我看到這個:

=> [Function: sayHello] 

所有嘗試都會導致這種或那種錯誤。我已經研究了MDN上的函數語法,並且非常確定我已經檢查過語法。你能指出我錯過了什麼嗎?

非常感謝您的幫助。

- 更新:感謝Richard Kho,Arun P Johny,hemnath mouli和Shawn的回覆以及。我非常感謝你的幫助。

這個問題與調用函數不同的原因是,「調用函數」這個術語是我不知道自己應該執行的關鍵步驟,也是我沒有想到的關鍵詞彙術語使用。

再次感謝!

+0

'返回的sayHello;'什麼是你想與 –

+2

你'sayHello'功能做的是正確的......現在你只需要像'var string = sayHello('Chris')''''''將'Hello'分配給'string'來調用它。 –

+0

https://jsfiddle.net/arunpjohny/tq50y99h/1/ –

回答

6

return sayHello不是你如何在Javascript中調用函數。相反,請撥打sayHello()並傳遞參數。

+1

我還會添加喲你通常不會在功能塊外返回任何東西,總是在一個範圍內 – Shawn

6
function sayHello(name) { 

    return "Hello " + name; 
} 
alert(sayHello("Mr. Park")); 

嘗試這樣
輸出:
在對話框:Hello Mr. Park