JavaScript中的export和import

文章目录

一、前言

要使用一个JavaScript文件自定义一个对象并将其导出,可以按照以下步骤进行:

1.1、创建JavaScript文件

创建一个JavaScript文件,例如myObject.js

1.2、定义自定义对象

在myObject.js文件中定义一个自定义对象。可以使用下面的代码作为示例:

javascript 复制代码
// 定义自定义对象
const myObject = {
  name: 'John',
  age: 25,
  sayHello() {
    console.log(`Hello, my name is ${this.name} and I'm ${this.age} years old.`);
  }
};

// 导出自定义对象
export default myObject;

上述代码中定义了一个名为myObject的对象,并向其添加了name、age属性和sayHello()方法。然后使用export default关键字将该对象导出。

1.3、引入自定义对象

在其他文件中引入这个对象。可以使用以下代码:

javascript 复制代码
// 引入自定义对象
import myObject from './myObject.js';

// 使用自定义对象
console.log(myObject.name); // 输出:John
console.log(myObject.age); // 输出:25
myObject.sayHello(); // 输出:Hello, my name is John and I'm 25 years old.

在上面的代码中,使用import关键字来引入myObject.js文件导出的默认对象。然后就可以使用该对象的属性和方法进行操作。

需要注意的是,在导出自定义对象时可以使用多种方式,例如使用export const myObject = {...}或module.exports = {...}等方式。但是在上面的示例中使用了ES6的export default语法来导出默认对象,这是一种常见的方式。

二、考察知识点:JavaScript 中的 export

export是ES6中的一个关键字,用于将变量、函数、类等导出为模块的接口,供其他模块使用。

当我们在编写模块时,需要向外部暴露一些内容,以便其他模块可以引入并使用。这时就可以使用export关键字来导出需要暴露的内容。

JavaScript 中的export语法有两种形式:命名导出 和默认导出。

2.1、命名导出

命名导出是指通过给变量、函数、类等赋予一个名称,并使用export关键字将其导出。例如:

javascript 复制代码
// 导出变量
export const PI = Math.PI;

// 导出函数
export function sayHello(name) {
  console.log(`Hello, ${name}!`);
}

// 导出类
export class Person {
  constructor(name) {
    this.name = name;
  }
  sayHi() {
    console.log(`Hi, I'm ${this.name}`);
  }
}

上面的代码中分别导出了一个常量PI、一个函数sayHello和一个类Person。在导出时使用export关键字将它们命名为模块的接口,以便其他模块引入并使用。

2.2、默认导出

默认导出是指当模块只需要导出一个变量、函数或类时,可以使用默认导出。需要注意的是,一个模块只能有一个默认导出。例如:

javascript 复制代码
// 导出默认值
export default function add(x, y) {
  return x + y;
}

// 导出默认值
export default class Person {
  constructor(name) {
    this.name = name;
  }
  sayHi() {
    console.log(`Hi, I'm ${this.name}`);
  }
}

// 导出默认值
const obj = {
  name: 'John',
  age: 25
};
export default obj;

上面的代码中分别导出了一个函数add、一个类Person和一个对象obj。在导出时使用export default关键字将它们作为模块的默认接口暴露出去,以便其他模块引入并使用。

另外,在使用导出模块的接口时,可以使用import关键字将模块引入,并通过解构赋值等方式获取需要的接口。例如:

javascript 复制代码
// 引入模块
import { PI, sayHello, Person } from './myModule.js';

// 使用模块接口
console.log(PI); // 输出:3.141592653589793
sayHello('Tom'); // 输出:Hello, Tom!
const person = new Person('John');
person.sayHi(); // 输出:Hi, I'm John

在上面的代码中,使用import关键字将myModule.js模块中的PI常量、sayHello()函数和Person类引入,并分别使用它们。

二、最后

本人每篇文章都是一字一句码出来,希望对大家有所帮助,多提提意见。顺手来个三连击,点赞👍收藏💖关注✨,一起加油☕

相关推荐
涛涛ing7 分钟前
模型吐出半截JSON,前端如何边收边渲染?2026年AI应用必须闯过的工程关
前端
aixingpan9 分钟前
aixingpan.cnAPI开发文档:api_docs_trichart_natal_solar_return_transit2接口指南
前端·php
FRing0325 分钟前
JavaScript入门到精通二十八(forEach遍历、创建对象的三种方式、构造函数、new实例化执行过程、实例成员和静态成员)
开发语言·前端·javascript
燕落南枝39 分钟前
CSS 表单选择器与伪元素选择器详解
前端·css
拖孩40 分钟前
一个人 + AI 做的小程序,今天,正式回本了
前端·后端·微信小程序
进击的丸子1 小时前
APP 人脸识别增值版 SDK:Camera2 无缝接入指南
前端·前端框架·代码规范
进击的丸子1 小时前
代理网络环境下 Linux Pro 在线激活实操指南
javascript·后端·安全
开开心心就好1 小时前
本地文件搜索工具,双击Ctrl就能呼出搜索
java·服务器·前端·支持向量机·ffmpeg·音视频·模拟退火算法
知了清语1 小时前
SVG 缩放预览:F12 无法定位子元素 & 放大模糊
前端
AN1 小时前
一个人,带着一群 AI:一个 10 年前端如何做出几十个团队在用的在线文档
前端