我儿子正在玩可汗学院的计算机科学并学习很多东西。
该应用程序在浏览器中的 JavaScript 上运行,但该语言并不完全符合 JavaScript 约定。例如 random(low, high) 而不是 JavaScript 的 Math.random()
有谁确切知道他们使用的是什么语言?
除了站点链接上的内容之外,是否还有更完整的文档,因为这看起来像是一个不完整的函数和方法列表。
我儿子正在玩可汗学院的计算机科学并学习很多东西。
该应用程序在浏览器中的 JavaScript 上运行,但该语言并不完全符合 JavaScript 约定。例如 random(low, high) 而不是 JavaScript 的 Math.random()
有谁确切知道他们使用的是什么语言?
除了站点链接上的内容之外,是否还有更完整的文档,因为这看起来像是一个不完整的函数和方法列表。
我相信他们只是将它包装起来并开发自己的功能,其下是 JavaScript。
就像声明的那样:
可汗学院计算机科学平台中的所有代码都是使用 JavaScript 和 Processing.js 编写的。
这对原始问题的使用有点晚了,但祝任何可能觉得这很有用的人好运。:)
我是一名 CS 大学生,我经常和 KACS 一起玩。
最初的处理语言是 Java 的一个子集,但是有一个名为 processing.js 的 javascript 版本。Khan Academy CS 沙箱使用 processing.js 库,但沙箱本身使用普通的旧 javascript - 尽管代码在右侧的输出窗口中呈现之前要经过几个步骤。
换句话说,代码是从左侧的文档编辑器中以文本形式获取的,然后经过仔细考虑并注入到右侧的沙盒运行环境中。沙箱管理环境以组合原生 javascript 和 processing.js 函数的子集(它们本身以 javascript 的形式来自 processing.js 库)。
random(a, b)
不是Math.random()
,而是一个 processing.js 辅助函数,它本身用于Math.random
在 a 和 b 之间给出结果。
还有更多内容(特别是lint,KACS 运行环境的一些次要技术细节和一些特定于 KACS 环境而不是 processing.js 的一部分的辅助函数),但是如果您想设置自己的沙箱要像 KA 沙箱一样工作,您可以在此处下载 processing.js 。我在名为 sandbox.html 的纯文本文件中使用以下代码制作了一个快速而肮脏的沙箱。
<html><head><script src="processing.min.js"></script></head><body><canvas id="output-canvas"></canvas><script>var sketch = function (processing){with(processing){size(400, 400);background(255);
// example
// fill(255, 0, 0);
// ellipse(0.5*width, 0.5*height, 100, 50);
// your code here
}};var p = new Processing(document.getElementById("output-canvas"), sketch);</script></body></html>
然后将上述文件放在与 processing.min.js 相同的文件夹中,只需在其中输入您的代码// your code here
,保存并打开文件。
处理函数的完整列表的文档在这里。
享受!
可汗学院使用 JavaScript,以及用于绘图的 Processing JS 库。Processing JS 是 Processing 语言的 JavaScript 端口:
Processing 是一种由 Ben Fry 和 Casey Reas 开发的开放可视化语言,最初由 John Resig 移植到 Javascript。Processing.js 由 Processing.js 团队维护。
> 使用常规 Java Script、Processing Java Script 和一些编辑,可汗学院在那里创建了自己的 Java Script 版本,称为 KAPJS。
>
可汗学院的 Javascript 程序使用 processing.js 库。processing.js 包含的函数的完整列表可以在这里找到:http: //processingjs.org/reference/
Khanacademy 使用 PJS(处理 Java 脚本),它是一个 JS 库。