gpt4 book ai didi

javascript - 为什么有两种不同的Javascript?

转载 作者:行者123 更新时间:2023-12-01 00:40:16 24 4
gpt4 key购买 nike

关闭。这个问题是opinion-based .它目前不接受答案。












想改进这个问题?更新问题,以便 editing this post 可以用事实和引用来回答它.

2年前关闭。




Improve this question




我正在学习 JavaScript,但教程因资源而异。看起来 JavaScipts 是不同的,它有 2 种类型。

所以,假设我们采用一个来源,他们有这样的代码:

<html>
<body>
<p>Before the script...</p>
<script>
alert( 'Hello, world!' );
</script>
<p>...After the script.</p>
</body>
</html>

但是当我在 Codecademy 上做教程时,例如,他们没有任何 html 代码,没有正文、p、脚本......代码不会进入 html。 alert、onclick 等功能非常流行,事实上 w3schools 就是从这些功能开始的,而在 Codecademy 上则没有这些功能。而这个代码行
document.getElementById('demo').innerHTML = Date();
它说它在 javascript 中很重要,但 codecademy 根本没有提到它!就像那些文档点 getElementById('demo') 是什么。它在做什么?如果它如此重要,为什么它在 w3schools 上无处不在,但在 Codecademy 上却没有?我在 Codecademy 上完成了整个 JavaScript 类(class),但我仍然很困惑它为什么如此不同?
我以前学过 Python,它类似于正确的 JavaScript(我称正确的 JavaScript 为那个,在 Codecademy 上,因为结构就像 Python)
所以奇怪的 JavaScript(在 w3schools 等上而不是在 Codecademy 上的那个)通常有美元符号,像这样的行
function $(x) {
return document.getElementById(x);
}

正确的 JavaScript 仅使用带有字符串插值的美元符号,仅此而已,整个 Codecademy 教程没有我上面提供的所有奇怪的代码,这在其他网络资源中似乎非常重要。
我发现的所有 YouTube 教程也都使用了正确的 JavaScript,只是声明变量、编写函数,比如普通的编程语言,比如 Python,但是教程中的所有 HTML 标记、警报、点击、美元符号等是怎么回事像w3schools?可以请人解释一下吗?

是的,我很尴尬。考虑到我对 Python 和 JavaScript 的了解高于初学者水平,但我无法弄清楚不同代码的含义以及正在发生的事情......

附言谢谢大家的回答。我可能不清楚,但我不想让你解释我发布的那些代码行的实际含义(就像你们大多数人一样),但主要是我想知道它为什么如此不同,为什么会这样区别,为什么有两种不同类型的 JavaScript?因此,我接受了适当的答案。

最佳答案

document.getElementById是 DOM API 的一部分,而不是 JavaScript 的一部分。如果您想与网页交互,您需要将 html 解析并“转换”为类似 DOM 树的结构。例如 document Node.js(服务器端 JavaScript)中不存在,但如果您想测试前端代码,则可以使用库。
<script>标签是一种将 JavaScript 文件添加到 html 页面的方法。但是你不需要 html 页面来使用 JavaScript(你可以使用我提到的 Node.js)。

关于这个:

function $(x) {return document.getElementById(x);}
$是普通的变量和函数名称,它是 Prototype 和 jQuery 库的遗留名称,它们将其用作 API 主入口点,并且非常简短和干净。

关于javascript - 为什么有两种不同的Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57770562/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com