aardio 运行JS代码
一、基础认知:JS 引擎集成的意义
在编程工作中,有时需要借助 JavaScript 的能力完成任务。aardio 提供的 web.script 模块,就像为我打开了一扇通道,能在 aardio 程序里直接调用 JS 功能,让不同语言的工具协同工作。
二、实践过程
(一)运行简单 JS 代码
用 aardio 运行最基础的 JS 计算代码。
代码:
import console;
import web.script;
// 创建 JS 引擎实例,选用 JScript 环境
var js = web.script("JScript")
// 执行 JS 表达式,计算 1 + 2
var result = js.eval("1 + 2");
console.log(result); // 输出结果:3
console.pause();
通过 web.script 快速搭建 JS 运行环境,eval 方法像“传送门”,把 JS 代码丢进去就能执行,简单又直接。
(二)传递 aardio 数据到 JS
让 aardio 里的变量参与 JS 计算。
代码:
import console;
import web.script;
var js = web.script("JScript")
// 定义 aardio 变量
var num = 5;
// 拼接变量到 JS 代码,实现数据传递
var result = js.eval("var a = " + num + "; a * 2");
console.log(result); // 输出结果:10
console.pause();
这种拼接方式虽基础,但能解决数据互通问题。后续复杂数据,或许要更规范的传递方式(比如 JSON 序列化),不过当前场景够用。
(三)从 JS 获取对象
在 aardio 中使用 JS 创建的对象。
代码:
import console;
import web.script;
var js = web.script("JScript")
// JS 创建对象,传递回 aardio
var obj = js.eval("({name: 'John', age: 30})");
console.log(obj.name); // 输出:John
console.log(obj.age); // 输出:30
console.pause();
JS 对象能直接在 aardio 里访问属性,像操作本地对象一样,语言间的边界变得很模糊,协作更顺畅。
(四)挑战:JS 数组求和
题目:用 JS 定义数组 [1,2,3,4,5],计算元素和并输出。
实现代码:
import console;
import web.script;
var js = web.script("JScript")
// 运行 JavaScript 代码计算数组元素的和
var result = js.eval("
var arr = [1, 2, 3, 4, 5];
var sum = 0;
for(var i = 0; i < arr.length; i++) {
sum += arr;
}
sum");
console.log(result); // 输出结果 15
console.pause();
把多行 JS 代码嵌入 aardio ,借助 JS 的数组、循环语法完成计算。
三、总结
核心能力掌握:
用 web.script 快速初始化 JS 引擎,通过 eval 执行 JS 代码;
实现 aardio 与 JS 的数据双向传递(变量传递、对象获取 );
整合 JS 语法完成复杂逻辑(数组遍历求和 )。
qq群号:697197055
微信群加我 _825720xw 拉你
登录后方可回帖