aardio 运行js代码

文周周的 6小时前 21

 

一、基础认知: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[i]; 
 } 
 sum");
console.log(result);  // 输出结果 15
console.pause();
截图四
截图四

把多行 JS 代码嵌入 aardio ,借助 JS 的数组、循环语法完成计算。

三、总结

核心能力掌握

  •  用 web.script 快速初始化 JS 引擎,通过 eval 执行 JS 代码;

  •  实现 aardio 与 JS 的数据双向传递(变量传递、对象获取 );

  •  整合 JS 语法完成复杂逻辑(数组遍历求和 )。

aardio 新手交流学习群,一起学习的进

qq群号:697197055
微信群加我 _825720xw 拉你

 


最新回复 (0)
返回