当前位置: 首页 > news >正文

Node.js 的 CommonJS ECMAScript 标准用法

目录

    • 一、前言
    • 二、CommonJS 标准
      • 使用方法
    • 三、ECMAScript 标准
      • 使用方法
    • 四、常用命令总结

一、前言

本文主要是介绍 Node.js 的 CommonJS & ECMAScript 标准用法
如果对你有帮助,欢迎三连 收藏点赞关注!!!

---- NickYoung


二、CommonJS 标准

一般应用在 Node.js 项目环境中

使用方法

  • 导出:module.exports = {}
/*** 目标:基于 CommonJS 标准语法,封装属性和方法并导出*/
const baseURL = 'http://hmajax.itheima.net'
const getArraySum = arr => arr.reduce((sum, item) => sum += item, 0)// 导出
module.exports = {url: baseURL,  // 对外属性名1: 内部私有属性名arraySum: getArraySum
}
  • 导入:require(‘模块名或路径’)
/*** 目标:基于 CommonJS 标准语法,导入工具属性和方法使用*/
// 导入require(模块名或路径)
const obj = require('./utils.js')
// obj 就等于 export default 导出的对象const result = obj.arraySum([5, 1, 2, 3])
console.log(result)

三、ECMAScript 标准

一般应用在前端工程化项目中

使用方法

  • 默认导出:export default {}
/*** 目标:基于 ECMAScript 标准语法,封装属性和方法并"默认"导出*/
const baseURL = 'http://hmajax.itheima.net'
const getArraySum = arr => arr.reduce((sum, item) => sum += item, 0)// 默认导出
export default {url: baseURL,  // 对外属性名1: 模块内私有变量arraySum: getArraySum
}
  • 默认导入:import 变量名 from ‘模块名或路径’
/*** 目标:基于 ECMAScript 标准语法,"默认"导入,工具属性和方法使用*/
// 默认导入
import obj from './utils.js'
// obj 就等于 export default 导出的对象const result = obj.arraySum([10, 20, 30])
console.log(result)
  • 注意:Node.js 默认支持 CommonJS标准语法

如需使用 ECMAScript 标准语法,在运行模块所在文件夹新建 package.json文件,并设置 { “type” : “module” }

{ “type”: "module" }
  • 命名方式:导出&导入
    |
    | 导出 | 导入 |
    | — | — | — |
    | 默认方式 | export default {} | import 变量名 from ‘模块名或路径’ |
    | 命名方式 | export 修饰定义语句 | import { 同名变量 } from ‘模块名或路径’ |

四、常用命令总结

功能命令
执行 js文件node xxx
初始化 package.jsonnpm init -y
下载本地软件包npm i 软件包名
下载全局软件包npm i 软件包名 -g
删除软件包npm uni 软件包名

相关文章:

Node.js 的 CommonJS ECMAScript 标准用法

目录 一、前言二、CommonJS 标准使用方法 三、ECMAScript 标准使用方法 四、常用命令总结 一、前言 本文主要是介绍 Node.js 的 CommonJS & ECMAScript 标准用法 如果对你有帮助,欢迎三连 收藏点赞关注!!! ---- NickYoung 二、…...

Mysql数据库 4.SQL语言 DQL数据查询语言 查询

DQL数据查询语言 从数据表中提取满足特定条件的记录 1.单表查询 2.多表查询 查询基础语法 select 关键字后指定要查询到的记录的哪些列 语法:select 列名(字段名)/某几列/全部列 from 表名 [具体条件]; select colnumName…...

俄罗斯黑客利用Roundcube零日漏洞窃取政府电子邮件

导语:最近,一起涉及Roundcube Webmail的零日漏洞被俄罗斯黑客组织Winter Vivern利用,攻击了欧洲政府机构和智库。这一漏洞已经存在至少一个月,直到10月16日,Roundcube开发团队才发布了安全补丁来修复这个Stored Cross-…...

【Javascript】ajax(阿甲克斯)

目录 什么是ajax? 同步与异步 原理 注意 写一个ajax请求 创建ajax对象 设置请求方式和地址 发送请求 设置响应HTTP请求状态变化的函数 什么是ajax? 是基于javascript的一种用于创建快速动态网页的技术,是一种在无需重新加载整个网页的情况下&#xff0c…...

Spring MVC的常用注解

目录 RequestMapping 例子: RequestMapping 支持什么类型的请求 使 RequestMapping 只支持特定的类型 RestController 通过 HTTP 请求传递参数给后端 1.传递单个参数 注意使⽤基本类型来接收参数的情况 2.传递多个参数 3.传递对象 4.RequestParam 后端参数…...

vim 使用文档笔记

1. i:进入编辑模式 2. ESC:进入一般命令模式 3. h 或 ←:光标向左移动一个字符 4. j 或 ↓:光标向下移动一个字符 5. k 或 ↑:光标向上移动一个字符 6. l 或 →:光标向右移动一个字符 7. num&#xf…...

274. H 指数

文章目录 一、题目1、题目描述2、基础框架3、原题链接 二、解题报告1、思路分析1.1 方案一1.2 方案二 2、时间复杂度3、代码详解3.1 方案一3.2 方案二 三、本题小知识 一、题目 1、题目描述 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论…...

0基础学习PyFlink——用户自定义函数之UDTAF

大纲 UDTAFTableAggregateFunction的实现累加器定义创建累加 返回类型计算 完整代码 在前面几篇文章中,我们分别介绍了UDF、UDTF和UDAF这三种用户自定义函数。本节我们将介绍最后一种函数:UDTAF——用户自定义表值聚合函数。 UDTAF UDTAF函数即具备了…...

SQLi靶场

SQLi靶场 less1- less2 (详细讲解) less 1 Error Based-String (字符类型注入) 思路分析 判断是否存在SQL注入 已知参数名为id,输入数值和‘ 单引号‘’ 双引号来判断,它是数值类型还是字符类型 首先输入 1 , 发现…...

重庆开放大学学子们的好帮手

作为一名电大学员,我有幸目睹了一个令人惊叹的学习工具的诞生——电大搜题微信公众号。这个创新应用为重庆开放大学(广播电视大学)的学子们提供了便捷、高效的学习资源,成为他们的得力助手。 重庆开放大学是一所为全日制在职人员提…...

机器学习-学习率:从理论到实战,探索学习率的调整策略

目录 一、引言二、学习率基础定义与解释学习率与梯度下降学习率对模型性能的影响 三、学习率调整策略常量学习率时间衰减自适应学习率AdaGradRMSpropAdam 四、学习率的代码实战环境设置数据和模型常量学习率时间衰减Adam优化器 五、学习率的最佳实践学习率范围测试循环学习率&a…...

【Vue3-Flask-BS架构Web应用】实践笔记1-使用一个bat脚本自动化完整部署环境

前言 近年来,Web开发已经成为计算机科学领域中最热门和多产的领域之一。Python和Vue.js是两个备受欢迎的工具,用于构建现代Web应用程序。在本教程中,我们将探索如何使用这两个工具来创建一个完整的Web项目。我们将完成从安装Python和Vue.js到…...

工作小计-GPU硬编以及依赖库 nvcuvidnvidia-encode

工作小计-GPU编码以及依赖库 已经是第三篇关于编解码的记录了。项目中用到GPU编码很久了,因为yuv太大,所以编码显得很重要。这次遇到的问题是环境的搭建问题。需要把开发机上的环境放到docker中,以保证docker中同样可以进行GPU的编码。 1 定…...

前端 JS 经典:宏任务、微任务、事件循环(EventLoop)

1. 前言概览 js 是一门单线程的非阻塞的脚本语言 单线程:只有一个主线程处理所有任务 非阻塞:有异步任务,主线程挂起这个任务,等异步返回结果再根据一定规则执行 2. 宏任务与微任务 都是异步任务宏任务:script 标签&a…...

电子邮件发送接收原理(附 go 语言实现发送邮件)

前言 首先要了解电子邮件的发送接收,不是点到点的。我想给你传达个消息,不是直接我跑到你家里喊你:“嘿,xxx,是你的益达,快拿走”。 而是类似快递的发送收取方式,是有服务器的中转的。我先将我…...

体系结构评估——(三)风险承担者

风险承担者分为系统生产者、系统消费者、系统服务人员和其他四大类。 其中系统生产者有:软件系统架构师、开发人员、维护人员、集成人员、测试人员、标准专家、 性能工程师、安全专家、项目经理、产品线经理。 系统消费者有:客户、最终用户、应用开发…...

【HarmonyOS】元服务卡片展示动态数据,并定点更新卡片数据

【关键字】 元服务卡片、卡片展示动态数据、更新卡片数据 【写在前面】 本篇文章主要介绍开发元服务卡片时,如何实现卡片中动态显示数据功能,并实现定时数据刷新。本篇文章通过实现定时刷新卡片中日期数据为例,讲述展示动态数据与更新数据功…...

SaveFileDialog.OverwritePrompt

SaveFileDialog.OverwritePrompt 获取或设置一个值,该值指示如果用户指定的文件名已存在,Save As 对话框是否显示警告。 public bool OverwritePrompt { get; set; } OverwritePrompt 控制在将要在改写现在文件时是否提示用户 https://vimsky.com/…...

oracle统计信息

1. 查看表的统计信息 1.建表 SQL> create table test as select * from dba_objects;2.查看表的统计信息 select owner, table_name, num_rows, blocks, avg_row_lenfrom dba_tableswhere owner SCOTTand table_name TEST; OWNER TABLE_NAME NUM_ROWS BLO…...

LeetCode 面试题 16.01. 交换数字

文章目录 一、题目二、C# 题解 一、题目 编写一个函数&#xff0c;不用临时变量&#xff0c;直接交换 numbers [a, b] 中 a 与 b 的值。 示例&#xff1a; 输入: numbers [1,2] 输出: [2,1] 提示&#xff1a; numbers.length 2-2147483647 < numbers[i] < 214748364…...

NoC路由设计与缓存一致性协议的协同优化

1. 项目概述&#xff1a;缓存一致性对NoC路由设计的挑战与机遇在当今多核处理器架构中&#xff0c;片上网络(NoC)作为核心间通信的基础设施&#xff0c;其设计质量直接影响整体系统性能。我曾在一次芯片设计项目中深刻体会到&#xff0c;当核心数量增加到64个时&#xff0c;传统…...

基于Blazor与LLamaSharp构建本地大模型ChatGPT式Web应用

1. 项目概述与核心价值最近在折腾一个内部工具&#xff0c;想把本地大模型的能力和类似ChatGPT的对话体验结合起来&#xff0c;部署成一个Web应用。找了一圈&#xff0c;发现一个挺有意思的项目叫“BLlamaSharp.ChatGpt.Blazor”。光看这个名字&#xff0c;信息量就很大了&…...

CircuitPython FancyLED库:专业级可寻址LED色彩动画开发指南

1. 项目概述&#xff1a;为什么需要FancyLED&#xff1f;在嵌入式开发&#xff0c;尤其是物联网和交互式装置项目中&#xff0c;可寻址LED&#xff08;如NeoPixel、DotStar&#xff09;已经成为构建动态视觉反馈的核心组件。无论是制作一个会呼吸的氛围灯&#xff0c;还是一个能…...

使用taotoken聚合api后模型响应延迟的实际体感观察

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用taotoken聚合api后模型响应延迟的实际体感观察 作为一名日常需要调用多种大模型API的开发者&#xff0c;将多个供应商的API接入…...

Claude API与内部知识库深度耦合方案:零代码改造实现RAG增强,已验证QPS提升4.8倍

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Claude API与内部知识库深度耦合方案&#xff1a;零代码改造实现RAG增强&#xff0c;已验证QPS提升4.8倍 该方案通过在 Claude API 请求链路中注入轻量级 RAG 中间件&#xff0c;无需修改业务侧任何模型…...

从‘一核有难,多核围观’到雨露均沾:深入Linux内核看网卡中断与RSS/RPS

从“一核有难&#xff0c;多核围观”到雨露均沾&#xff1a;Linux内核网络中断负载均衡实战解析 当服务器网卡吞吐量突然暴跌时&#xff0c;很多工程师的第一反应是检查带宽和协议栈参数&#xff0c;却忽略了最底层的CPU中断分配机制。我曾处理过一台数据库服务器&#xff0c;在…...

峰值电流模式控制中传播延迟的功率影响与补偿方案

1. 项目概述&#xff1a;直面峰值电流模式控制的“功率之殇”做电源设计&#xff0c;尤其是反激式开关电源&#xff0c;有一个场景大家肯定都遇到过&#xff0c;而且非常头疼&#xff1a;你的电源在最低输入电压&#xff08;比如85VAC&#xff09;下&#xff0c;各项指标都调得…...

OpenClaw Windows 端快速部署教程 小白实操指南

OpenClaw 一键安装包&#xff5c;一键部署&#xff0c;轻松搞定环境配置 适配系统&#xff1a;Windows10/11 64 核心优势&#xff1a;全程可视化操作&#xff0c;无需命令行、无需手动配置 Python/Node.js&#xff0c;内置所有运行依赖&#xff0c;5 分钟即可完成部署&#x…...

终极Windows多任务解决方案:悬浮透明浏览器如何提升300%工作效率?

终极Windows多任务解决方案&#xff1a;悬浮透明浏览器如何提升300%工作效率&#xff1f; 【免费下载链接】glass-browser A floating, always-on-top, transparent browser for Windows. 项目地址: https://gitcode.com/gh_mirrors/gl/glass-browser 你是否厌倦了在多个…...

Harness Engineering:用“确定性“驾驭AI的“不确定性“

上一篇 SDD 系列收尾时&#xff0c;留了一句话&#xff1a;“如何驾驭 AI 来赋能整个软件开发周期&#xff0c;将是另外一个值得深入探讨的话题。” 到现在有将近一个月没更新&#xff01;期间除了偷懒&#xff0c;五一跑高速添堵之外&#xff0c;主要的原因是这个问题没怎么想…...