JavaScript模块化开发规范及npm包管理器入门指南

JavaScript模块化开发规范及npm包管理器入门指南

JavaScript作为一门常用的编程语言,模块化开发规范和包管理工具对于项目开发至关重要。本指南将深入探讨ECMAScript模块标准规范、CommonJS规范以及npm包管理器的基本知识和使用方法。

JavaScript模块化开发规范

ECMAScript Module标准规范

  1. 导入导出变量

新建导出文件ex.js:

javascript 复制代码
let val = 'ex data'
export { val }

新建导入文件im.js:

javascript 复制代码
import { val } from "./ex.mjs"

console.log(val)

注意:在Node.js中可能需将文件后缀改为.mjs以解决报错。

  1. 导入导出使用as别名

更名导出变量:

javascript 复制代码
// ex.mjs
let val = 'ex data'
export { val as value }

// im.mjs
import { value as vv } from "./ex.mjs"
console.log(vv)
  1. 默认导出

默认导出变量:

javascript 复制代码
// ex.mjs
let val = 'ex data'
export default val;

// im.mjs
import val from "./ex.mjs"
console.log(val)
  1. 通过配置package.json解决报错

添加配置信息到package.json:

json 复制代码
{
  "type": "module"
}
  1. CommonJS规范

Node.js默认使用CommonJS规范,但ECMA Script Module提供更强大的模块化支持。

  1. 使用CommonJS实现模块化

新建m1.js导出:

javascript 复制代码
let val = 'this is commonjs'
module.exports = val

新建m2.js导入:

javascript 复制代码
const val = require("./m1")
console.log(val)

其他相关内容请参考上述具体规范。

npm包管理器

  1. 什么是npm

npm是JavaScript生态中常用的包管理工具,用于管理第三方包。 官网: www.npmjs.com 例子: json-server包

  1. npm随Node.js一起安装

使用npm --version查看版本号。

  1. 常用npm命令
  • npm init:初始化项目,生成package.json文件。
  • 修改scripts选项,如"dev": "node a.js"。
  • 运行npm run dev执行脚本。

示例a.js文件:

javascript 复制代码
console.log(123)

以上是JavaScript模块化开发规范及npm包管理器的入门指南,通过学习和实践这些内容,您将能更好地组织和管理JavaScript项目,提高开发效率。若大家有任何问题或需要进一步的解释,请留言反馈。感谢阅读!

相关推荐
独泪了无痕2 小时前
Spring Data Redis 快速上手
spring boot·redis·后端
m0_639906946 小时前
Linux 操作系统入门:目录结构、服务排查常用命令、Shell 脚本基础
linux·运维·后端
holly就是我7 小时前
AI 编程助手为什么跑偏?用开源 ccglass 看清 Prompt、工具调用和 Token 消耗
人工智能·后端
鸿蒙开发7 小时前
共享 Schema 与 SchemaFactory
前端·后端·harmonyos
用户788477316347 小时前
小程序后端三选一:云开发、.NET WebAPI、Node,我按客户现状分了三种答案
后端
aiopencode7 小时前
局域网设备抓包怎么做?用 TraceEagle 抓电视、游戏机和 IoT 流量
后端·ios
智驭未来掌门人7 小时前
CLion 开发 Qt 项目的优势
后端
EnCi Zheng7 小时前
后端怎么把AI接口稳定安全低成本接进业务:超时重试、密钥隔离与成本熔断清单
人工智能·后端·安全·架构·api
Bazingga7 小时前
从一家酒店讲懂Docker
后端
SEO_juper7 小时前
Node.js 重定向链检测工具:301 跳了几跳、有没有成环,一次看清
xml·开发语言·python·node.js·json·bash