Examples of export and import in js
export
export is used to output the external interface of the module. The export command can be used as long as it is at the top level of the module. That is to say, if it is within a certain function scope, judgment statement, or conditional statement, an error will be reported. The export command has several output forms.
PS: export命令可用于输出任何数据类型,可以是Number, String, Boolean, Null, Undefined, Array, Object, Function .... 以输出函数与对象举例 1. export var obj = { name: 'keith' } // 直接输出 2. var obj = { name: 'keith' } export { obj } // 使用该种形式输出时需要添加大括号 export obj // 不添加大括号时会报错,因为我们要输出的是该对象的引用。注意是对该对象的引用,而不是拷贝。这也意味着在该模块改变name属性,会导致另一个模块下name属性的变化,这点与CommonJS不同,CommonJS只是对某个对象的拷贝 var num = function () { return 123 } export { num } // 正确 export num // 报错,输出对num的引用,而不是直接输出函数num 3. var obj = { name: 'keith' } export { obj as person } // export命令支持接口的重命名 4 var obj = { name: 'keith' } export default obj // 输出默认值时不需要添加大括号, export default在一个模块中只能使用一次,但export命令可以使用多次 // export default的本质:就是将某个变量命名为default // export default num // 等同于 export { num as default } // import Num from './module.js' // 等同于 import { defualt as Num } from './module.js' 5 export { num, obj } // export命令处于模块顶层的任何位置,都可以将变量输出 // 不管是用var声明的变量,还是let声明的变量 // 在执行过程中export命令会被默认放置在整个模块的最底层。 var num = function () { return 123 }; let obj = { name: 'keith' } // 相当于 var num = function () { return 123 }; var obj = { name: 'keith' } // ..函数、对象等其他数据类型 // 被放置在模块最底层 export { name, obj }
import
The export command is used to output the external interface of the module, and the import command is used to introduce functional interfaces provided by other modules. Like the export command, the import command can only be used at the top level of a module and cannot be used in function scopes, conditional statements, and judgment statements. The import command has the following forms.
1. import { num, obj } from './export.js' // 模块名,可以不添加.js后缀,但需要写配置文件,与Node知识相关 // import入的接口名字,要与export出的名字对应 console.log(num()) // 123 console.log(obj.name) // 'keith' 2. import { obj as person } from './export.js' // 可以修改import进来的变量名 console.log(person.name) // 'keith' 3. import * as $ from './export.js' // 使用*用于模块的整体加载,并重命名为$对象.此时可以通过$对象取到export的对外接口 console.log($.num()) // 123 console.log($.obj.name) // 'keith' 4. import 'normalize.css' // 用于加载整个模块,此时不需要添加变量名 5. let obj = { name: 'keith' } export default obj import person from './module.js' import boy from './module.js' // 对应于export default 命令 // 此时import进来的接口不需要添加大括号 // 且支持import时的任意命名 console.log(person.name) // 'keith' console.log(boy.name) // 'keith' 6. console.log(obj.name) // 'keith' import { obj } from './export.js' // 与export相反,import默认会被提升到模块最顶层 // 即 import { obj } from './export.js' console.log(obj)
Composite writing method of export and import
If you introduce other modules into a module and then export the module, you can use the composite writing method of export and import
1. 使用{}导出模块 export { Hello, World } from './modules' // 相当于 import { Hello, World } from './moudles' export { Hello, World } 2. 改写模块的名字 export { Hello as Person } from './modules' // 相当于 import { Hello as Person } from './modules' export { Person } 3. 改写默认export default模块的名字 export { default as Person } from './modules' // 相当于 import Person from './modoules' // ./modules里的模块是通过export default导出的 export { Person }
The above is the detailed content of Examples of export and import in js. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Article discusses creating, publishing, and maintaining JavaScript libraries, focusing on planning, development, testing, documentation, and promotion strategies.

The article discusses strategies for optimizing JavaScript performance in browsers, focusing on reducing execution time and minimizing impact on page load speed.

Frequently Asked Questions and Solutions for Front-end Thermal Paper Ticket Printing In Front-end Development, Ticket Printing is a common requirement. However, many developers are implementing...

The article discusses effective JavaScript debugging using browser developer tools, focusing on setting breakpoints, using the console, and analyzing performance.

The article explains how to use source maps to debug minified JavaScript by mapping it back to the original code. It discusses enabling source maps, setting breakpoints, and using tools like Chrome DevTools and Webpack.

There is no absolute salary for Python and JavaScript developers, depending on skills and industry needs. 1. Python may be paid more in data science and machine learning. 2. JavaScript has great demand in front-end and full-stack development, and its salary is also considerable. 3. Influencing factors include experience, geographical location, company size and specific skills.

This tutorial will explain how to create pie, ring, and bubble charts using Chart.js. Previously, we have learned four chart types of Chart.js: line chart and bar chart (tutorial 2), as well as radar chart and polar region chart (tutorial 3). Create pie and ring charts Pie charts and ring charts are ideal for showing the proportions of a whole that is divided into different parts. For example, a pie chart can be used to show the percentage of male lions, female lions and young lions in a safari, or the percentage of votes that different candidates receive in the election. Pie charts are only suitable for comparing single parameters or datasets. It should be noted that the pie chart cannot draw entities with zero value because the angle of the fan in the pie chart depends on the numerical size of the data point. This means any entity with zero proportion

In-depth discussion of the root causes of the difference in console.log output. This article will analyze the differences in the output results of console.log function in a piece of code and explain the reasons behind it. �...
