es6 的 class 只是一个语法糖,实际上还是基于原型来实现的

发布网友 发布时间:2022-04-23 02:17

我来回答

1个回答

热心网友 时间:2022-04-21 23:33

ES6的Class只是面向对象编程的语法糖,升级了ES5的构造函数的原型链继承的写法,并没有解决模块化问题。Mole功能就是为了解决这个问题而提出的。历史上,JavaScript一直没有模块(mole)体系,无法将一个大程序拆分成互相依赖的小文件,再用简单的方法拼装起来。其他语言都有这项功能,比如Ruby的`require`、Python的`import`,甚至就连CSS都有`@import`,但是JavaScript任何这方面的支持都没有,这对开发大型的、复杂的项目形成了巨大障碍。在ES6之前,社区制定了一些模块加载方案,最主要的有CommonJS和AMD两种。前者用于服务器,后者用于浏览器。ES6在语言规格的层面上,实现了模块功能,而且实现得相当简单,完全可以取代现有的CommonJS和AMD规范,成为浏览器和服务器通用的模块解决方案。//ReactjsES6代码中的实例importReactfrom'react'importReactDOMfrom'react-dom'import{createStore,combineRecers}from'rex'import{Provider}from'react-rex'import{Router,Route,IndexRoute,browserHistory}from'react-router'import{syncHistoryWithStore,routerRecer}from'react-router-rex'import{createDevTools}from'rex-devtools'importLogMonitorfrom'rex-devtools-log-monitor'importSliderMonitorfrom'rex-slider-monitor'importDockMonitorfrom'rex-devtools-dock-monitor'//otherfilejsimportcountRecersfrom'./countRecers'exportdefaultcountRecers

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com