首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >'Arrow Functions‘和'Functions’是否等价/可互换?

'Arrow Functions‘和'Functions’是否等价/可互换?
EN

Stack Overflow用户
提问于 2015-12-19 01:58:01
回答 4查看 185.7K关注 0票数 674

ES2015中的箭头函数提供了更简洁的语法。

  • 现在是否可以将所有函数声明/表达式替换为箭头函数?
  • 我需要注意什么?

示例:

构造函数

function User(name) {
  this.name = name;
}

// vs

const User = name => {
  this.name = name;
};

原型方法

User.prototype.getName = function() {
  return this.name;
};

// vs

User.prototype.getName = () => this.name;

对象(文字)方法

const obj = {
  getName: function() {
    // ...
  }
};

// vs

const obj = {
  getName: () => {
    // ...
  }
};

回调

setTimeout(function() {
  // ...
}, 500);

// vs

setTimeout(() => {
  // ...
}, 500);

变分函数

function sum() {
  let args = [].slice.call(arguments);
  // ...
}

// vs
const sum = (...args) => {
  // ...
};
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34361379

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档