typescript - 即使我将返回语句设置为数组,函数也会返回 void?
问题描述
我正在研究这个函数,它采用默认的距离米数组,并且转换回英尺和英里,问题是我收到这个错误我说选项必须返回一个数字数组任何想法这个语法在哪里错误。类型 'void[]' 不能分配给类型 'number[]'。
const option = () => {
let arr = [200, 400, 800, 1000, 1, 2, 3, 4, 5];
return arr.map((x, i) => {
i <= 3 ? x * 3.281 : x / 1.609;
});
}
console.log(option());
解决方案
您既缺少 areturn
又缺少 not:使用箭头函数时,如果您的函数体是单个语句,则可以省略 the和{}
语句return
:
const option = () => {
let arr = [200, 400, 800, 1000, 1, 2, 3, 4, 5];
return arr.map((x, i) => i <= 3 ? x * 3.281 : x / 1.609);
}
console.log(option());
顺便说一句,这还可以让您执行以下操作:
const materials = [
'Hydrogen',
'Helium',
'Lithium',
'Beryllium'
];
console.log(materials.map(material => material.length));
推荐阅读
- python - 取特定字母后面的字母并将它们放入一个变量中
- javascript - 使用 React Router Dom 和 Redux 打开多个页面
- cypress - 赛普拉斯:检查一个元素是否包含特定的其他元素
- python - 我有一个具有一个必需参数和两个可选参数的类,以及一个返回可选参数之一的 repr 方法,以给定者为准
- apache-spark - 火花重新分区和合并
- javascript - 为什么 http req.url 给出两个数组而不是一个?
- arrays - 使用 horzcat 时出错 被连接的数组的维度不一致。MATLAB
- reactjs - 错误:无效的挂钩调用。Hooks 只能在函数组件的主体内部调用 - 添加 Loader 组件时
- r - 无法在命令行中运行 R Shiny
- reactjs - 我试图在使用 json 时做一个列表,但我有一个问题:“绑定元素‘产品’隐含地有一个‘任何’类型反应原生”