linux上运行js脚本

貌似学运维,啥都要懂一点儿??????

我们将使用 Node.jsES6 模块语法。

首先,确保你已经安装了 Node.js。

创建项目文件结构

假设我们的项目结构如下:

复制代码
my_project/
├── index.js
└── math.js

1. 创建 math.js

math.js 文件中,定义一些导出的函数:

javascript 复制代码
// math.js

export function add(a, b) {
  return a + b;
}

export function subtract(a, b) {
  return a - b;
}

2. 创建 index.js

index.js 文件中,使用 import 语句导入 math.js 中的函数,并使用这些函数:

javascript 复制代码
// index.js

import { add, subtract } from './math.js';

const a = 5;
const b = 3;

console.log(`The sum of ${a} and ${b} is ${add(a, b)}`);
console.log(`The difference between ${a} and ${b} is ${subtract(a, b)}`);

3. 运行脚本

为了让 Node.js 支持 ES6 模块语法,你需要在 package.json 文件中添加 "type": "module",或者使用 .mjs 扩展名来命名你的文件。

方法1:使用 package.json

创建一个 package.json 文件:

json 复制代码
{
  "type": "module"
}

然后在终端中导航到 my_project 目录并运行脚本:

sh 复制代码
node index.js
方法2:使用 .mjs 扩展名

将文件名改为 index.mjsmath.mjs,然后直接运行:

sh 复制代码
node index.mjs

完整代码示例

math.js
javascript 复制代码
// math.js

export function add(a, b) {
  return a + b;
}

export function subtract(a, b) {
  return a - b;
}
index.js
javascript 复制代码
// index.js

import { add, subtract } from './math.js';

const a = 5;
const b = 3;

console.log(`The sum of ${a} and ${b} is ${add(a, b)}`);
console.log(`The difference between ${a} and ${b} is ${subtract(a, b)}`);

运行 node index.js,你将会看到以下输出:

复制代码
The sum of 5 and 3 is 8
The difference between 5 and 3 is 2
相关推荐
life码农12 分钟前
Linux截取Nginx指定时间段日志的三种方法(grep/awk/sed)
linux·nginx
接口不宕机29 分钟前
外贸公司实战:利用 1688API 自动化监控竞品价格,解决采购定价痛点
运维·自动化
Dawn-bit31 分钟前
Linux网络进阶:TCP三次握手和四次挥手与TCP连接状态
linux·服务器·网络·tcp/ip·云计算·智能路由器
旗开得胜马到成功1 小时前
可信备份技术解析:中科热备如何防范备份数据被攻击
运维·服务器
JavaPub-rodert1 小时前
使用 Docker 部署 Ollama:Docker Compose 一键运行 DeepSeek-R1 1.5B
运维·docker·容器
蓝速科技1 小时前
蓝速科技信创落地:平衡安全合规与项目成本的实战方案
android·运维·人工智能·科技·安全·电脑·鸿蒙
研☆香1 小时前
聊一聊前端的常见字 关键字
开发语言·前端·javascript
NJCloud1 小时前
MooseFS 分布式存储部署与高可用架构实践
linux·运维·分布式·架构
晓晓_za8986681 小时前
Geo 优化源码蒸馏词机制:地域词库构建与匹配逻辑详解
运维·tcp/ip·spring·缓存·ci/cd
mounter6251 小时前
将 RDMA 引入容器:Soft-RoCE (RXE) 网络命名空间支持深度解析
linux·linux kernel·kernel·rdma·net namespace