5

我儿子正在玩可汗学院的计算机科学并学习很多东西。

该应用程序在浏览器中的 JavaScript 上运行,但该语言并不完全符合 JavaScript 约定。例如 random(low, high) 而不是 JavaScript 的 Math.random()

有谁确切知道他们使用的是什么语言?

除了站点链接上的内容之外,是否还有更完整的文档,因为这看起来像是一个不完整的函数和方法列表。

4

6 回答 6

7

我相信他们只是将它包装起来并开发自己的功能,其下是 JavaScript。

就像声明的那样:

可汗学院计算机科学平台中的所有代码都是使用 JavaScript 和 Processing.js 编写的。

https://www.khanacademy.org/cs/docs

于 2013-06-29T13:36:54.067 回答
5

这对原始问题的使用有点晚了,但祝任何可能觉得这很有用的人好运。:)

我是一名 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,保存并打开文件。

处理函数的完整列表的文档在这里

享受!

于 2015-01-23T19:00:59.537 回答
1

可汗学院使用 JavaScript,以及用于绘图的 Processing JS 库。Processing JS 是 Processing 语言的 JavaScript 端口:

Processing 是一种由 Ben Fry 和 Casey Reas 开发的开放可视化语言,最初由 John Resig 移植到 Javascript。Processing.js 由 Processing.js 团队维护。

于 2014-08-17T04:08:52.547 回答
1

> 使用常规 Java Script、Processing Java Script 和一些编辑,可汗学院在那里创建了自己的 Java Script 版本,称为 KAPJS。

>

于 2017-05-28T21:46:42.267 回答
0

可汗学院的 Javascript 程序使用 processing.js 库。processing.js 包含的函数的完整列表可以在这里找到:http: //processingjs.org/reference/

于 2015-06-23T19:40:58.667 回答
-1

Khanacademy 使用 PJS(处理 Java 脚本),它是一个 JS 库。

于 2017-03-17T03:14:11.133 回答