Pixiv - KiraraShss
336 字
2 分钟
箭头函数写法的注意点
欢迎来到我的博客!
使用 Markdown 格式编写。
今天学到了什么
- 箭头函数写法的注意点
箭头函数写法的注意点
这是因为 JavaScript 中的 return 语句不能换行。
在你的代码中,return 关键字后面直接跟了一个换行符,JavaScript 解析器会自动在 return 后面加分号,导致实际上是执行了 return;(返回 undefined),而下面的模板字符串成了永远不会执行的代码。
错误分析
const htmlStr = list.map((item, index) => { return // <--- 灾难发生在这里:JS 认为这里是 return; 结束了。 ` <tr> ... </tr> ` }).join('')解决方法
方案一:把模板字符串跟在 return 后面(不要换行)
const htmlStr = list.map((item, index) => { return ` <tr> <td>${index + 1}</td> ... </tr> ` }).join('')方案二(推荐):去掉花括号和 return
利用箭头函数的隐式返回特性,代码更简洁:
const htmlStr = list.map((item, index) => ` <tr> <td>${index + 1}</td> <td>${item.bookname}</td> <td>${item.author}</td> <td>${item.publisher}</td> <td> <span class="del" data-id="${item.id}">删除</span> <span class="edit" data-id="${item.id}">编辑</span> </td> </tr> `).join('')你上次代码中,return 和后面的模板字符串换行了,在 JavaScript 中,如果 return 后面直接换行,JS 会自动在 return 后面加分号,导致返回 undefined。
// 错误写法return `...` // 这里实际执行的是 return; 下面的代码不执行
// 正确写法return `...`赞助支持
如果这篇文章对你有帮助,欢迎赞助支持!
最后更新于 2026-03-01,距今已过 19 天
部分内容可能已过时