我正在做Udacity JavaScript研究,現在有一個測驗困擾我。我知道如何用紅寶石很容易地做到這一點,但這一個正在殺死我。Javascript循環返回字符串x次
我需要調用函數並返回「ha」num次並添加「!」在循環的最後。
我試過這個,但它沒有幫助。應該很簡單。
function laugh(num) {
for (var x = 0; num; x ++) {
return 'ha';
}
}
console.log(laugh(3));
我正在做Udacity JavaScript研究,現在有一個測驗困擾我。我知道如何用紅寶石很容易地做到這一點,但這一個正在殺死我。Javascript循環返回字符串x次
我需要調用函數並返回「ha」num次並添加「!」在循環的最後。
我試過這個,但它沒有幫助。應該很簡單。
function laugh(num) {
for (var x = 0; num; x ++) {
return 'ha';
}
}
console.log(laugh(3));
您只能從return
一次功能。嘗試在循環中構建所需的字符串,然後在循環完成後返回值。
(注意:您可以在一個功能多return
語句,但只要你打他們的一個函數執行完畢)
其實你甚至不需要循環。
const laugh = num => 'ha'.repeat(num) + '!';
console.log(laugh(3));
console.log(laugh(5));
是的,我現在用.repeat(num)沒有循環,但Udacity給你一個使用循環的小費。 –
@ОлегЯкунин這只是一個提示,而不是必需的條件。 –
function laugh(num) {
var outString = '';
for (var x = 0; x<num; x ++) {
outString += ' ha';
}
return outString.substring(1) + '!';
}
console.log(laugh(3));
在循環返回將返回整體功能。爲了使這個工作,你可以連接循環中的字符串,然後返回連接的輸出。您也錯誤地格式化了循環,當x小於num時,需要告訴循環停止。嘗試:
function laugh(num) {
var laughString = '';
for (var x = 0; x < num; x++) {
laughString += 'ha';
}
return laughString + '!';
}
console.log(laugh(3));
function laugh(input) {
var answer = '';
for (var i = 0; i < input; i++) {
answer += 'ha';
}
return (answer + '!');
}
首先,一個變量設置爲空字符串,(這將是您的答案) 然後,寫一個for循環迴路根據輸入(你做到了這一點) 然後在for循環裏面加'ha'到你的回答字符串 終於在for循環之外(它跑完所有循環後) 返回答案字符串加!
函數返回一次。 – davidxxx
我懷疑這個問題的措辭是這樣的,你可能不想回3次哈,你可能想返回一個有3公頃的字符串。像「哈哈哈!」。應該有一個回報。 –
'return'立即返回。 IOW,通過循環的第一次傳遞返回,並且下一次傳球永遠不會發生。顯然,這不是你想要的。 –