糖语法

语法糖是一种语法,使得语言更容易理解和更具有可读性,它使语言相对我们来说变得更"甜"。这也意味着ES6的一些"新"的特点并不是真的新,只是试图简化语法而已,让我们编程更容易。这样就无需使用老式的取巧的方法编写你的代码,而是可以一种更简单的方式来编写代码,那就是使用糖语法。

javascript并不像其他面向对象语言一样支持类这个概念,相反js使用functionprototype模拟类的概念。

下面是创建类的新语法,类似JAVA代码:

class Project {
  constructor(name) {
    this.name = name;
  }
 
  start() {
    return "Project " + this.name + " starting";
  }
}
 
var project = new Project("Journal");
project.start(); // "Project Journal starting"

你在这个类中定义的所有方法都被加入这个类的原型prototype中。

既然JS不支持类,那么它支持继承吗?

是的,JS中继承是通过prototype实现。下面是WebProject子类继承Project类的代码:

class WebProject extends Project {
  constructor(name, technologies) {
    super(name);
    this.technologies = technologies;
  }
 
  info() {
    return this.name + " uses " + arrayToString(this.technology);
  }
}
 
function arrayToString(param) {
  // ... some implementation
}

var webJournal = new WebProject("FrontEnd Journal", "javascript");
webJournal.start(); // "FrontEnd Journal starting"
webJournal.info(); // "FrontEnd Journal uses javascript"

注意到在WebProject 构造器中,调用了Project的构造器,这样可以使用它的属性和方法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 177,675评论 25 709
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,977评论 18 399
  • 官方中文版原文链接 感谢社区中各位的大力支持,译者再次奉上一点点福利:阿里云产品券,享受所有官网优惠,并抽取幸运大...
    HetfieldJoe阅读 3,073评论 4 14
  • 我猜 秋天是被秋风熏枯的 秋风一到 我的脸就开始蜕皮了 我想 哪一年秋天 皮不再褪去 我就会老去 那年的冬日的暖阳...
    偷了块砖阅读 156评论 0 0
  • 冬日午后的阳光透过高大的玻璃窗,将房间晒得暖洋洋的,今天的我(小S)泡上一壶菊香普洱,坐到窗台上,邀请十年后的我(...
    三毛地阅读 382评论 0 0

友情链接更多精彩内容