[英]I am trying to return function but showing error
const output2 = rev("i love javascript") function rev(ar1) { var str1= ar1.split(' ') str1.map(str => { //return str[0].toUpperCase() + str.substring(1) return str[0].toUpperCase()+str.substring(1) }); return ar1 } console.log(output2)
正如評論所說,您返回的是函數的參數,而不是 map 返回的值。
const output2 = rev("i love javascript") function rev(ar1) { var str1= ar1.split(' ') return str1.map(str => { //return str[0].toUpperCase() + str.substring(1) return str[0].toUpperCase()+str.substring(1) }); } console.log(output2)
我猜你只是為了這樣做:
function rev(ar1) { var str1 = ar1.split(' ') str1 = str1.map(str => { //return str[0].toUpperCase() + str.substring(1) return str[0].toUpperCase()+str.substring(1) }).join(' '); return str1 } const output2 = rev("i love javascript") console.log(output2)
return ar1
返回原始的a1
字符串,沒有改變
您可能想要返回map
的結果,因此我們可以執行以下操作:
const output2 = rev("i love javascript") function rev(ar1) { var str1= ar1.split(' ') return str1.map(str => { return str[0].toUpperCase()+str.substring(1) }); } console.log(output2)
但是由於map
返回一個數組,我們需要join
它連接回一個字符串:
const output2 = rev("i love javascript") function rev(ar1) { var str1= ar1.split(' ') return str1.map(str => { return str[0].toUpperCase()+str.substring(1) }).join(' '); } console.log(output2)
Output: I Love Javascript
由於str1
在聲明后不使用,我們可以將其刪除以創建單行:
return ar1.split(' ').map(str =>str[0].toUpperCase()+str.substring(1)).join(' ');
const output2 = rev("i love javascript") function rev(ar1) { return ar1.split(' ').map(str =>str[0].toUpperCase()+str.substring(1)).join(' '); } console.log(output2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.