JS++ |类型系统
RGBtoHex:在 JS++ 中使用 JavaScript
我们将创建两个文件,一个 JavaScript 文件和一个 JS++ 文件,来介绍它们如何交互。我们将使用经典的 'rgbToHex' 示例来理解 JS++ 类型保证。
首先,创建一个名为 rgbtohex.js (JavaScript) 的文件并输入以下代码:
(不要担心试图理解这段 JavaScript 代码。我们只是将其用作示例。)
function rgbToHex(red, green, blue) {
if (typeof red !== "number")
throw new TypeError("Expected numeric 'red' value");
if (typeof green !== "number")
throw new TypeError("Expected numeric 'green' value");
if (typeof blue !== "number")
throw new TypeError("Expected numeric 'blue' value");
if (red < 0 || red > 255)
throw new RangeError("Expected 'red' value between 0 and 255 (inclusive)");
if (green < 0 || green > 255)
throw new RangeError("Expected 'green' value between 0 and 255 (inclusive)");
if (blue < 0 || blue > 255)
throw new RangeError("Expected 'blue' value between 0 and 255 (inclusive)");
var r = red.toString(16);
var g = green.toString(16);
var b = blue.toString(16);
while (r.length < 2) r = "0" + r;
while (g.length < 2) g = "0" + g;
while (b.length < 2) b = "0" + b;
return "#" + r + g + b;
}
将上面的 JavaScript 代码保存到 rgbtohex.js 并创建一个新的 main.jspp 文件:
external alert;
external rgbToHex;
alert(rgbToHex(255, 255, 255));
我们首先将“警报”声明为“外部”。 'alert' 实际上是 Web 浏览器的原生函数(通过“DOM API”),它允许我们显示消息框。接下来,我们将我们刚刚编写的自定义 JavaScript函数('rgbToHex') 声明为“external”。这允许我们使用 JS++ 中的函数。
编译 main.jspp。现在创建一个 index.html 文件:
RGB to Hex Conversion