我是學習 Javascript 的新手,遇到了一個問題,我無法在在線課程中弄清楚它的基本原理。請看下面的代碼。
function palindrome(word){
let backwardWord = "";
for (letter of word){
// Adding letter at the beginning of the backward string
backwardWord = letter backwardWord;
}
if (word.toLowerCase() === backwardWord.toLowerCase())
return true
else
return false
}
palindrome('racecar');
您可能知道,此函式旨在查找字串向前或向后讀取是否相同。
我的問題是,據我所知,if 陳述句需要 {} 才能運行,并且 return 只能在函式中使用,而不是 if 陳述句。那為什么if陳述句中沒有{},為什么上面的代碼可以使用return呢?
我嘗試使用相同的格式重寫一個函式,但它回傳未定義而不是 true。
let a=1
function test(){
if (a===1)
return true
else
return false
}
感謝任何回答這個問題的人,這將有很大幫助,因為我在過去的 0.5 小時內感到困惑并且不能。
uj5u.com熱心網友回復:
當函式內只有一行時,可以省略 {}。例如:
for(int i=0;i<5;i ){
print(i)
}
可以寫成:
for(int i=0;i<5;i )
print(i)
至于您的第二個選項,顯示 undefined 是因為您已經定義了函式,但從未呼叫或使用過它。如果你輸入
test()
在您的代碼的下一行中,您將得到true答案。
uj5u.com熱心網友回復:
首先,第二個函式正在運行并回傳 true
let a=1
function test(){
if (a===1)
return true
else
return false
}
console.log(test());
console.log(typeof(test()));
如果您在 之后有 1 行代碼if,則不需要 {}。
這是您的第一個代碼。更好的使用
for (let letter of word)
function palindrome(word){
let backwardWord = "";
for (let letter of word){
backwardWord = letter backwardWord;
}
if (word.toLowerCase() === backwardWord.toLowerCase()){
console.log(backwardWord);
return true;
}
else
return false
}
console.log(palindrome('racecar'));
最后,return陳述句會讓你立即退出函式。您正在回傳具有 type 的 true ,您可以在第二個代碼boolean中看到 using函式。typeof()
uj5u.com熱心網友回復:
您可以return從函式內的任何位置進行操作。return,就像break,立即離開它正在執行的任何塊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/469006.html
標籤:javascript
