Javascript(es2016) import和require用法和区别详解


Posted in Javascript onAugust 11, 2017

本文介绍了Javascript(es2016) import和require用法和区别详解,分享给大家,具体如下:

写个简单js文件,假设名字为:lib.js 。 假设内容如下:

export const sqrt = Math.sqrt;
export function square(x) {
 return x * x;
}
export function diag(x, y) {
 return sqrt(square(x) + square(y));
}

这样就可以在其他地方对lib中定义的属性和方法进行引用,引用方法有两种,也就时import和require。

//方法一
import { square, diag } from 'lib';
console.log(square(11)); // 121
console.log(diag(4, 3));
//方法儿
import * as lib from 'lib';
square = lib.square;

还可以设置默认的导出信息,就需要崽lib.js中定义 export default {}。default后面可以接一个参数,也可以接一个数组。书写方法为:

//------ module1.js ------
export default 123;

//------ module2.js ------
const D = 123;
export { D as default };

通常比较习惯用第一种。然后用import就可以得到这个数组或则参数。但是import只能用于静态导入,就是必须在文件开始的时候,在最上层就写好。而require就可以实现动态加载。

加载方式 规范 命令 特点
运行时加载 CommonJS/AMD require 社区方案,提供了服务器/浏览器的模块加载方案。非语言层面的标准。只能在运行时确定模块的依赖关系及输入/输出的变量,无法进行静态优化。
编译时加载 ESMAScript6+ import 语言规格层面支持模块功能。支持编译时静态分析,便于JS引入宏和类型检验。动态绑定。
const incrementCounter = function ({dispatch,state}){
 dispatch(‘INCREMENT‘)
}
export default {
 incrementCounter
}
//require
let myAction = require(‘xxxxx‘);
myAction.default.incrementCounter()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript里模拟sleep(两种实现方式)
Jan 25 Javascript
Ext JS添加子组件的误区探讨
Jun 28 Javascript
jquery动态增加删除表格行的小例子
Nov 14 Javascript
教你如何使用node.js制作代理服务器
Nov 26 Javascript
JavaScript中消除闭包的一般方法介绍
Mar 16 Javascript
jquery表单对象属性过滤选择器实例分析
May 18 Javascript
BootStrap文件上传样式超好看【持续更新】
May 10 Javascript
JS中跨页面调用变量和函数的方法(例如a.js 和 b.js中互相调用)
Nov 01 Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
Jan 20 Javascript
BootStrap 导航条实例代码
May 18 Javascript
AngularJS下$http服务Post方法传递json参数的实例
Mar 29 Javascript
JavaScript实现拖拽功能
Feb 11 Javascript
详解Node中导入模块require和import的区别
Aug 11 #Javascript
vue实现单选和多选功能
Aug 11 #Javascript
js微信应用场景之微信音乐相册案例分享
Aug 11 #Javascript
Angular模板表单校验方法详解
Aug 11 #Javascript
AngularJs导出数据到Excel的示例代码
Aug 11 #Javascript
Vue 表单控件绑定的实现示例
Aug 11 #Javascript
Angular4实现动态添加删除表单输入框功能
Aug 11 #Javascript
You might like
PHP包含文件函数include、include_once、require、require_once区别总结
2014/04/05 PHP
php强制用户转向www域名的方法
2015/06/19 PHP
高质量PHP代码的50个实用技巧必备(上)
2016/01/22 PHP
PHP array_shift()用法实例分析
2019/01/07 PHP
Laravel 5.1 框架Blade模板引擎用法实例分析
2020/01/04 PHP
用javascript动态调整iframe高度的代码
2007/04/10 Javascript
jQuery之选择组件的深入解析
2013/06/19 Javascript
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
jQuery焦点控制图层展示延迟隐藏的方法
2015/03/09 Javascript
JavaScript操作XML/HTML比较常用的对象属性集锦
2015/10/30 Javascript
angular+ionic 的app上拉加载更新数据实现方法
2017/01/16 Javascript
javascript判断回文数详解及实现代码
2017/02/03 Javascript
微信小程序左右滑动切换页面详解及实例代码
2017/02/28 Javascript
jQuery实现IE输入框完成placeholder标签功能的方法
2017/09/20 jQuery
在vue中获取token,并将token写进header的方法
2018/09/26 Javascript
JavaScript使用ul中li标签实现删除效果
2019/04/15 Javascript
vue自定义js图片碎片轮播图切换效果的实现代码
2019/04/28 Javascript
详解Vue中的基本语法和常用指令
2019/07/23 Javascript
纯JS实现五子棋游戏
2020/05/28 Javascript
jQuery+css实现的点击图片放大缩小预览功能示例【图片预览 查看大图】
2020/05/29 jQuery
vue实现div单选多选功能
2020/07/16 Javascript
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
Python中使用OpenCV库来进行简单的气象学遥感影像计算
2016/02/19 Python
解决使用export_graphviz可视化树报错的问题
2019/08/09 Python
详解HTML5 录音的踩坑之旅
2017/12/26 HTML / CSS
欧洲品牌瓷器餐具网上商店:Porzellantreff.de
2018/04/04 全球购物
美国室内和室外装饰花盆购物网站:ePlanters
2019/03/22 全球购物
波兰最大的宠物用品网上商店:FERA.PL
2019/08/11 全球购物
King Apparel官网:英国街头服饰品牌
2019/09/05 全球购物
4s店总经理岗位职责
2013/12/31 职场文书
城市精细化管理实施方案
2014/03/04 职场文书
党委书记个人对照检查材料
2014/09/15 职场文书
课外活动实习计划
2015/01/19 职场文书
2016年暑期教师培训心得体会
2016/01/09 职场文书
导游词创作书写原则以及开场白技巧怎么学?
2019/09/25 职场文书
Redis缓存-序列化对象存储乱码问题的解决
2021/06/21 Redis