Javascript 为什么有两种不同的Java脚本?
我正在学习JavaScript,但是教程根据资源的不同而有所不同。看起来JavaScipts是不同的,它有两种类型 那么,假设我们使用一个源代码,它们的代码如下:Javascript 为什么有两种不同的Java脚本?,javascript,Javascript,我正在学习JavaScript,但是教程根据资源的不同而有所不同。看起来JavaScipts是不同的,它有两种类型 那么,假设我们使用一个源代码,它们的代码如下: <html> <body> <p>Before the script...</p> <script> alert( 'Hello, world!' ); </script>
<html>
<body>
<p>Before the script...</p>
<script>
alert( 'Hello, world!' );
</script>
<p>...After the script.</p>
</body>
</html>
在脚本之前
警惕(‘你好,世界!’);
…在剧本之后
但当我做教程的时候,比如说编解码器,他们没有任何html代码,没有正文,p,脚本。。。代码不进入html。像alert、onclick这样的函数非常流行,事实上,w3schools从这些函数开始,在Codecademy上没有这样的函数。这个代码行
document.getElementById('demo').innerHTML=Date()代码>
它说它在javascript中很重要,但codecademy根本没有提到它!比如那些文档dot getElementById('demo')。它在做什么?如果它如此重要的话,为什么它在学校里随处可见,而不是在编解码器上?我在Codecademy上完成了整个JavaScript课程,但我仍然很困惑它为什么会如此不同?
我以前学习过Python,它与正确的JavaScript类似(我称正确的JavaScript为Codecademy上的一种,因为它的结构与Python非常相似)
所以奇怪的JavaScript(w3schools等上的JavaScript,而不是Codecademy上的JavaScript)通常有美元符号,比如这样的行
函数$(x){
返回文档.getElementById(x);
}
正确的JavaScript只在字符串插值中使用美元符号,就是这样,整个Codecademy教程没有我上面提供的所有奇怪的代码,这在其他web源代码中似乎非常重要。
我发现的所有YouTube教程也都使用了适当的JavaScript,只是声明变量、编写函数,比如普通编程语言,比如Python,但是像W3这样的教程中的HTML标记、警报、onclick、美元符号等又有什么用呢?谁能给我解释一下吗
是的,我很尴尬。考虑到这一点,我对Python和JavaScript的了解要高于初学者,但我无法理解不同的代码有什么不同,以及发生了什么
另外,谢谢大家的回答。我可能不清楚,但我不想让你们解释我发布的那些代码行的实际含义(和你们大多数人一样),但我主要想知道它为什么会如此不同,为什么会有这种差异,为什么会有两种不同类型的JavaScript?因此,我接受了正确的答案。可以说有超过2个偶数
Javascript是为了在浏览器内部、DOM上下文中工作而开发的,但它也是一种独立于任何浏览器、任何HTML、任何DOM的编程语言
在HTML中,
标记用于javascript,但您也可以链接到javascript文件。可以说有两个以上的标记
Javascript是为了在浏览器内部、DOM上下文中工作而开发的,但它也是一种独立于任何浏览器、任何HTML、任何DOM的编程语言
在HTML中,
标记用于javascript,但您也可以链接到javascript文件。文档。getElementById
是DOM API的一部分,而不是javascript的一部分。如果您想与网页交互,您需要解析html并将其“转换”为DOM树状结构。例如,document
在Node.js(服务器端JavaScript)中不存在,但如果您想测试前端代码,可以使用该库
标记是将JavaScript文件添加到html页面的一种方法。但使用JavaScript不需要html页面(可以使用我提到的Node.js)
关于这一点:
function $(x) {return document.getElementById(x);}
$
是普通变量和函数名,它是Prototype和jQuery库的遗留版本,它们将此作为API主入口点,并且非常简洁明了。文档。getElementById
是DOM API的一部分,而不是JavaScript的一部分。如果您想与网页交互,您需要解析html并将其“转换”为DOM树状结构。例如,document
在Node.js(服务器端JavaScript)中不存在,但如果您想测试前端代码,可以使用该库
标记是将JavaScript文件添加到html页面的一种方法。但使用JavaScript不需要html页面(可以使用我提到的Node.js)
关于这一点:
function $(x) {return document.getElementById(x);}
$
是普通变量和函数名,它是Prototype和jQuery库的传统,它们将此作为API主入口点,并且非常简短和干净。
标记只是一个html元素,它将此块的内容声明为javascript。
内容将由DOM范围内的浏览器执行
在javascript应用程序中,您不需要将javascript直接编码到DOM中,而是将JS文件包含/注入页面。标签只是一个html元素,它将此块的内容声明为javascript。
内容将由DOM范围内的浏览器执行
在javascript应用程序中,您不会将javascript直接编码到DOM中,而是将JS文件包括/注入到页面中。当您看到getElement
时,通常是尝试从DOM树中查找元素,在您的情况下,它尝试查找id为demo
的元素
你会找到这样的东西吗
对于codedocument.getElementById('demo').innerHTML=new Date()
这将获取日期并将其设置为HTML#demo节点
对于函数$(x){return document.getElementById(x);}
此函数试图复制选择DOM的jQuery函数。它的功能与上面的代码相同,但您键入的代码要少很多