不懂ts中这个=>的意思

let myAdd: (baseValue:number, increment:number) => number =
    function(x: number, y: number): number { return x + y; };

这个=>要如何理解呢???

阅读 9k
5 个回答

这是typescript吧

=>是方法简写

相当于

var myAdd = function(baseValue: number, increment:number): number { 
    return x+y; 
};

相当于:

interface TestFunc {
    (baseValue: number, increment: number): number;
}

let myAdd: TestFunc = function(x: number, y: number) {
    return x + y;
};

有没有好懂一些?你看到的=> number,其实是声明方法的返回值得是number

=> 这个是es6的语法糖,与typescript关系不大。
var foo=(x)=>x+1
等价于
var foo=function(x){return x+1}

ECMAScript6中的箭头函数,跟TypeScript没有关系。

箭头函数

ES6中新增的箭头操作符=> 简化了函数的书写。操作符左边为输入的参数,而右边则是进行的操作以及返回的值
例如:

var reflect = value => value;
 // 等同于:
 var reflect = function(value) {
     return value;
};
   

       
(a) => {alert(a)}

相当于

function(a) {alert(a)}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题