JavaScript:显示矩形()、三角形()、椭圆()等图形

JavaScript:显示矩形()、三角形()、椭圆()等图形,javascript,Javascript,我正在Khan Academy和Codecademy上学习JavaScript。我刚刚开始学习。我真的很喜欢Khan教授JS的方式,但是,除了Khan的引擎之外,我找不到任何方法能够将我所学到的应用到其他任何地方。Khan专注于图形,而不是基于控制台的命令 我真正想要的是一种方法,我可以在Khan(图形)和Codecademy(控制台)上学习,并在我的PC上离线“运行”这些功能。例如,我将能够“运行”所有这些功能,等等: confirm()、prompt()、rect()、triangle()、

我正在Khan Academy和Codecademy上学习JavaScript。我刚刚开始学习。我真的很喜欢Khan教授JS的方式,但是,除了Khan的引擎之外,我找不到任何方法能够将我所学到的应用到其他任何地方。Khan专注于图形,而不是基于控制台的命令

我真正想要的是一种方法,我可以在Khan(图形)和Codecademy(控制台)上学习,并在我的PC上离线“运行”这些功能。例如,我将能够“运行”所有这些功能,等等:

confirm()、prompt()、rect()、triangle()、ellipse()、console.log()等


那么,有谁能向我解释一下如何在我的电脑上脱机编写、保存和运行这些JavaScript程序吗?

显而易见的解决方案是在磁盘上创建一个HTML文件,其中包含一个包含要运行的代码的标记。在浏览器中打开以运行,刷新页面以重新运行

如果要创建命令行程序或不使用浏览器,也可以使用nodejs

<script src="processing.js"></script>
<script type="application/processing" data-processing-target="pjs">
void setup() {
  size(200, 200);
  stroke(0), strokeWeight(2);
  println('hello web!');
}
void draw() {
  background(100); // clear the frame
  ellipse(abs(frameCount%400-200), 50, 25, 25);
}
</script>
<canvas id="pjs"> </canvas>

确认和提示是本机浏览器调用,但在NodeJ的情况下需要特定的实现。矩形、三角形和椭圆在这两种情况下都需要具体实现。console.log在NodeJ和浏览器中本机工作。

显而易见的解决方案是在磁盘上创建一个HTML文件,其中包含一个包含要运行的代码的标记。在浏览器中打开以运行,刷新页面以重新运行

如果要创建命令行程序或不使用浏览器,也可以使用nodejs

<script src="processing.js"></script>
<script type="application/processing" data-processing-target="pjs">
void setup() {
  size(200, 200);
  stroke(0), strokeWeight(2);
  println('hello web!');
}
void draw() {
  background(100); // clear the frame
  ellipse(abs(frameCount%400-200), 50, 25, 25);
}
</script>
<canvas id="pjs"> </canvas>

确认和提示是本机浏览器调用,但在NodeJ的情况下需要特定的实现。矩形、三角形和椭圆在这两种情况下都需要具体实现。console.log在NodeJ和浏览器中本机工作。

运行JavaScript不必在线。JavaScript是一种客户端语言,这意味着它可以在web浏览器中运行。由于您正处于JavaScript阶段,我将假设您至少了解HTML的基础知识,并希望了解CSS

通过将此标记放置在节中,可以在HTML文档中包含JavaScript文件

<html>
  <head>
  <script src="/path/relavite/to/htmlpage/your.js"></script>
  </head>
...
</html>
JavaScript文件的内容是:(注意:这是jQuery,JavaScript的扩展)


现在,在浏览器中加载HTML文件将显示一个红色背景的段落,尽管CSS明确表示应该是蓝色的。因此,JavaScript必须正在运行

运行JavaScript不必在线。JavaScript是一种客户端语言,这意味着它可以在web浏览器中运行。由于您正处于JavaScript阶段,我将假设您至少了解HTML的基础知识,并希望了解CSS

通过将此标记放置在节中,可以在HTML文档中包含JavaScript文件

<html>
  <head>
  <script src="/path/relavite/to/htmlpage/your.js"></script>
  </head>
...
</html>
JavaScript文件的内容是:(注意:这是jQuery,JavaScript的扩展)


现在,在浏览器中加载HTML文件将显示一个红色背景的段落,尽管CSS明确表示应该是蓝色的。因此,JavaScript必须正在运行

Khan Academy上的编程使用JavaScript语言和库ProcessingJS

下面是一个独立的程序示例,源于。这将执行一个非常简单的动画

图形功能将与和相匹配

要运行此程序,您需要从下载文件“processing.js”,并将以下内容保存为“hello.html”(或任何您想要的名称),然后使用浏览器打开“hello.html”

<script src="processing.js"></script>
<script type="application/processing" data-processing-target="pjs">
void setup() {
  size(200, 200);
  stroke(0), strokeWeight(2);
  println('hello web!');
}
void draw() {
  background(100); // clear the frame
  ellipse(abs(frameCount%400-200), 50, 25, 25);
}
</script>
<canvas id="pjs"> </canvas>

Khan Academy上的编程使用JavaScript语言和库ProcessingJS

下面是一个独立的程序示例,源于。这将执行一个非常简单的动画

图形功能将与和相匹配

要运行此程序,您需要从下载文件“processing.js”,并将以下内容保存为“hello.html”(或任何您想要的名称),然后使用浏览器打开“hello.html”

<script src="processing.js"></script>
<script type="application/processing" data-processing-target="pjs">
void setup() {
  size(200, 200);
  stroke(0), strokeWeight(2);
  println('hello web!');
}
void draw() {
  background(100); // clear the frame
  ellipse(abs(frameCount%400-200), 50, 25, 25);
}
</script>
<canvas id="pjs"> </canvas>

为什么要重新发明轮子?这是以前做过的。它被称为加载了“汗的引擎”的浏览器:-)为什么要重新发明轮子?这是以前做过的。它被称为加载了“Khan's engine”的浏览器:-)我还没有足够的代表投票,但这正是我一直在寻找的。非常感谢您花时间对此进行研究,并对其重新编辑几次,以提供完美的答案。我只是想获得更多的信息。我试图修改第一个脚本来制作一个简单的动画。你能告诉我我需要做什么改变才能让它工作吗@用户3513147:好主意。我已经通过实现将动画添加到第一个示例中,它会自动调用——每个动画帧调用一次。为什么我必须在Khan Academy上使用“var draw=function()”而不是“void draw()”来接收相同的结果?另外,为什么在我的浏览器中不需要在末尾加分号,但Khan需要它?@user3513147:我在这里没有这样做,但通常最好在JavaScript代码块的顶部添加分号。如果你这样做,它将需要分号——否则,它对这些事情的限制就更少了。我还没有足够的代表投票,但这正是我一直在寻找的。非常感谢您花时间对此进行研究,并对其重新编辑几次,以提供完美的答案。我只是想获得更多的信息。我试图修改第一个脚本来制作一个简单的动画。你能告诉我我需要做什么改变才能让它工作吗@用户3513147:好主意。我已经通过实现将动画添加到第一个示例中,它会自动调用——每个动画帧调用一次。为什么我必须在Khan Academy上使用“var draw=function()”而不是“void draw()”来接收相同的结果?还有,为什么在我的浏览器中不需要在末尾加分号,但Khan需要它?@user3513147:我没有在这里加分号,但通常最好在顶部加上分号