千家信息网

javascript中AMD,CMD,Commonjs和es6有什么区别

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,本文小编为大家详细介绍"javascript中AMD,CMD,Commonjs和es6有什么区别",内容详细,步骤清晰,细节处理妥当,希望这篇"javascript中AMD,CMD,Commonjs和
千家信息网最后更新 2025年02月23日javascript中AMD,CMD,Commonjs和es6有什么区别

本文小编为大家详细介绍"javascript中AMD,CMD,Commonjs和es6有什么区别",内容详细,步骤清晰,细节处理妥当,希望这篇"javascript中AMD,CMD,Commonjs和es6有什么区别"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

1、AMD

AMD是RequireJS在推广过程中对模块定义的规范化产出,AMD规范则是非同步加载模块,允许指定回调函数。

AMD标准中,定义了下面两个API:

  1. require([module], callback)

  2. define(id, [depends], callback)

即通过define来定义一个模块,然后使用 require 来加载一个模块。 并且,require 还支持CommonJS 的模块导出方式。

a.jsdefine(['package/b',...], function(b) {    function func1 () {        b.sayHi('hello world');    }    return {      func1: func1    }});require(['a'], function(a) {  a.func1()})

2、CMD

CMD是SeaJS在推广过程中对模块定义的规范化产出。CMD是同步模块定义。

//所有模块都通过define来定义define(function(require, exports, module) {    // 通过require引入依赖  var $ = require('jquery');  var C = require('./c.js');  exports.sayHi = ...  module.exports = ...})

二者的区别是前者是对于依赖的模块提前执行,而后者是延迟执行。 前者推崇依赖前置,而后者推崇依赖就近,即只在需要用到某个模块的时候再 require。

3、CommonJS 规范---module.exports

前端浏览器不支持,Nodejs中使用的是这个规范

exports.sum = function(a,b) {   return a + b;}exports.count= function(arr) {   return arr.length;}

CommonJS的核心思想就是通过 require 方法来同步加载所要依赖的其他模块,然后通过 exports 或者 module.exports 来导出需要暴露的接口。

4、ES6---export/import

在ES6中,我们可以使用 import 关键字引入模块,通过 exprot 关键字导出模块,功能较之于前几个方案更为强大,也是我们所推崇的,但是由于ES6目前无法在浏览器中执行,所以,我们只能通过babel将不被支持的import编译为当前受到广泛支持的 require

import Home from './Home.vue'export default {   }

读到这里,这篇"javascript中AMD,CMD,Commonjs和es6有什么区别"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

模块 支持 文章 同步 关键 关键字 内容 浏览器 过程 产出 推广 浏览 妥当 强大 两个 函数 前端 功能 就是 思想 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 湖北ios软件开发多少钱 软件开发在郑州买房哪个区最 手机电子邮箱访问服务器异常 西安中育美佳创意软件开发学院 邯郸互联网软件开发定做 伊犁软件开发简介 企业管理用的软件开发 ssm框架前台显示数据库 武汉华为鲲鹏服务器销售价格 mysql更新数据库方法 oracle 数据库对象 u8不小心点到初始数据库怎么办 我的世界服务器卡 学网络安全专业后悔吗 浦发银行 服务器 信创 网络安全安全很危险rap 网络安全的数据防线 昆明市网络安全应急指挥中心招聘 超市收银系统软件开发 谷歌的服务器数据中心 网络安全员演示支付宝被修改 软件开发项目试运行记录模板 第四代数据库模型 数据库check语句 语法错误 枣庄软件开发公司有哪些 如何在机房中辨别哪个是服务器 虚拟机数据库设置权限 网络技术是找上海百首网络 游戏开发和主流软件开发 澳门导航软件开发
0