import、export、export default、as的使用

本文详细介绍了ES6中export、exportdefault和as关键字的用法,包括常量、函数、对象导出,以及如何通过as重命名。重点讲解了exportdefault的单次导出与import的便捷使用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

前言

一、export

二、export default

三、as

  示例1

  示例2

  示例3

总结


前言

export 与import是es6中新增模块功能最主要的两个命令。

  1.export与export default均可用于导出常量、函数、文件、模块等
  2.在一个文件或模块中,export、import可以有多个,export default仅有一个
  3.通过export方式导出,在导入时要加{ },export default则不需要{ }

一、export

使用export抛出的变量需要用{}进行import

//a.js
export const str = "blablabla~";
export function log(sth) {
      return sth;
    }
 
对应的导入方式:
 
//b.js
import { str, log as _log } from 'a'; 
//也可以分开写两次,导入的时候带花括号。还可以用as重命名

二、export default

使用export default抛出的变量,只需要自定义名字就行

//a.js :
var obj = { name: ‘example’ }; 
export default obj; 
 
//b.js: 
import newNname from ‘./a.js’;   //newNname 是自己随便取的名字,这里可以随便命名
console.log(newNname .name);       // example;

三、as

  示例1

// index.js
export function fn1(data){
  console.log(1)
}
export function fn2(data){
  console.log(2)
}

import * as Fn from './index.js'
Fn.fn1()  // 1
Fn.fn2()  // 2

  示例2

//test.js
let myName = "Jon";
let myAge = 18;
let myfn = function(){
    return "我是"+myName+"!今年"+myAge+"岁了"
}
export {
    myName as name,
    myAge as age,
    myfn as fn
}

//接收代码
import {fn,age,name} from "./test.js";
console.log(fn()); //我是Jon!今年19岁了
console.log(age); //19
console.log(name); //Jon

//或接收代码
import * as info from "./test.js"; //通过*来批量接收,as 来指定接收的名字
console.log(info.fn()); //我是Jon!今年18岁了
console.log(info.age); //18
console.log(info.name); //Jon

  示例3

重命名export和import,如果导入的多个文件中,变量名字相同,即会产生命名冲突的问题,为了解决该问题,ES6为提供了重命名的方法,当你在导入名称时可以这样做

/*************test1.js*****************/
export let myName = "我来自test1.js";
/*************test2.js*****************/
export let myName = "我来自test2.js";

/*************index.js****************/
import {myName as name1} from "./test1.js";
import {myName as name2} from "./test2.js";
console.log(name1); //我来自test1.js
console.log(name2); //我来自test2.js

总结

其中export和export default最大的区别就是export不限变量数 可以一直写,而export default  只输出一次 而且 export出的变量想要使用必须使用{}来盛放,而export default 不需要 只要import任意一个名字来接收对象即可,as可进行重命名。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天高任鸟飞dyz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值