我正在嘗試撰寫一個函式來獲取字串的長度,而不使用 .length 屬性、任何回圈或內置方法。我正在使用遞回,但是,停止陳述句沒有評估并導致堆疊溢位。我嘗試了控制臺日志記錄string[i],果然,一旦達到長度,它控制臺記錄“未定義”,但 if 陳述句仍然不會評估。
const getLength = (string, i = 0) => {
if (string[i] === 'undefined') return 0;
return 1 getLength(string, i 1);
}
console.log(getLength("what is going on??")); //18
uj5u.com熱心網友回復:
如果狀態應該是string[i] === undefined
uj5u.com熱心網友回復:
您對 undefined 的測驗不起作用
您可以測驗虛假或更詳細
這只是一個虛假的,它會在虛假值上失敗,比如 0
const getLength = (string, i = 0) => string[i] ? 1 getLength(string, i 1) : 0;
console.log(getLength("what is going on??")); //18
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/430687.html
標籤:javascript 递归
