首页 web前端 js教程 你好世界!您的第一个JavaScript程序

你好世界!您的第一个JavaScript程序

Feb 16, 2025 pm 01:08 PM

学习JavaScript编程的第一步:从“Hello, World!”开始

Hello, World! Your First JavaScript Programs

学习任何编程语言,编写“Hello, World!”程序都是一个传统且重要的入门步骤。这是一个简单的程序,它将短语“Hello, World!”输出到控制台,标志着你编程之旅的开始。我们将遵循这一传统,用JavaScript编写这个程序。它将是一条简单的语句,把“Hello, World!”打印到控制台。

你需要打开你常用的控制台(Node REPL、浏览器控制台或网页上的ES6控制台)。控制台打开后,只需输入以下代码:

console.log('Hello, World!');
登录后复制
登录后复制
登录后复制

然后按Enter键。如果一切顺利,你应该会看到输出“Hello, World!”,类似于下面的截图。

Hello, World! Your First JavaScript Programs

恭喜你,你刚刚编写了你的第一个JavaScript程序!它看起来可能微不足道,但正如一位智者所说,每个编程高手之路都始于一行代码(或者类似的话)。

JavaScript在浏览器中的应用

JavaScript是一种解释型语言,需要宿主环境才能运行。由于其起源,JavaScript主要运行环境是浏览器,但它也可以在其他环境中运行;例如,我们刚刚编写的第一个程序就在Node REPL中运行。Node还可以用于在服务器上运行JavaScript。但到目前为止,JavaScript最常见的用途仍然是使网页具有交互性。因此,在我们继续之前,我们应该了解一下网页的构成。

网页的三层结构

几乎所有网页都由三个关键要素组成——HTML、CSS和JavaScript。HTML用于标记内容;CSS是表示层;JavaScript则增加了交互性。

每一层都建立在前一层的基础之上。一个网页仅仅依靠HTML层就能正常工作——事实上,许多网站会在“裸日”移除CSS层。仅使用HTML层的网站将以其最纯粹的形式呈现,看起来非常老式,但仍然应该完全功能齐全。

保持层级分离

将每一层的关注点分开,使每一层只负责一件事情,被广泛认为是最佳实践。将它们放在一起会导致非常复杂的页面,所有代码混杂在一个文件中,造成“标签汤”或“代码意大利面”。这曾经是制作网站的标准方式,并且网上仍然有很多这样的例子。

非侵入式JavaScript

最初使用JavaScript时,它被设计为直接插入HTML代码中,如下例所示,当点击按钮时将显示一条消息:

<button id='button' href='#' onclick='alert("Hello World")'>Click Me</button>
登录后复制
登录后复制

这使得难以看出发生了什么,因为JavaScript代码与HTML混杂在一起。这也意味着代码与HTML紧密耦合,因此HTML的任何更改都需要更改JavaScript代码才能防止其中断。

可以通过将其放在它自己的标签内来将JavaScript代码与其余HTML分开。以下代码将实现与上述相同的结果:

console.log('Hello, World!');
登录后复制
登录后复制
登录后复制

这样更好,因为所有JavaScript代码都位于一个地方,在两个script标签之间,而不是与HTML标签混合在一起。

我们可以更进一步,将JavaScript代码与HTML和CSS完全分开,放在它自己的文件中。这可以通过在script标签中使用src属性来指定要链接的文件来实现:

<button id='button' href='#' onclick='alert("Hello World")'>Click Me</button>
登录后复制
登录后复制

然后将JavaScript代码放在与HTML文档相同的目录中名为main.js的文件中。将JavaScript代码完全分开的这一概念是非侵入式JavaScript的核心原则之一。

同样,CSS也应该放在单独的文件中,因此网页中唯一的代码是实际的HTML以及指向CSS和JavaScript文件的链接。这通常被认为是最佳实践,也是本书中将采用的方法。

自闭合标签

如果您使用过XML或XHTML,您可能遇到过这样的自闭合标签:

<button id='button'>Click Me</button>
<🎜>
登录后复制

这在HTML5中是不必要的,但它仍然可以工作。

优雅降级和渐进增强

优雅降级是构建网站的过程,使其在使用JavaScript的现代浏览器中运行效果最佳,但在旧版浏览器中或如果JavaScript或其某些功能不可用时,仍然可以以合理的标准运行。这方面的一个例子是高清(HD)广播的程序——它们在高清电视上运行效果最佳,但在标准电视上仍然可以运行;只是画面质量会较低。这些程序甚至可以在黑白电视上运行。

渐进增强是从头开始构建网页的过程,具有基本的功能级别,然后如果浏览器可用,则添加额外的增强功能。如果您遵循三层原则,JavaScript层增强网页而不是成为页面不可或缺的要素,那么这应该感觉很自然。一个例子可能是电话公司提供基本级别的电话呼叫,但如果您的电话支持,则提供呼叫等待和主叫号码显示等额外服务。

每当您向网页添加JavaScript时,都应该始终考虑您想要采取的方法。您是想从许多令人惊叹的效果开始,突破界限,然后确保对于那些可能没有最新和最棒浏览器的用户来说体验会优雅地降级?还是您想从构建可在大多数浏览器上运行的功能性网站开始,然后使用JavaScript增强体验?这两种方法相似,但细微之处有所不同。

你的第二个JavaScript程序

我们将用一个将在浏览器中运行的第二个JavaScript程序结束本章。此示例比前一个示例更复杂,其中包含许多将在后面章节中更详细介绍的概念,因此如果您在此阶段不了解所有内容,请不要担心!其目的是向您展示JavaScript的功能,并介绍将在即将到来的章节中介绍的一些重要概念。

我们将遵循前面提到的非侵入式JavaScript的实践,并将我们的JavaScript代码放在单独的文件中。首先创建一个名为rainbow的文件夹。在此文件夹中,创建一个名为rainbow.html的文件和另一个名为main.js的文件。

让我们从HTML开始。打开rainbow.html并输入以下代码:

console.log('Hello, World!');
登录后复制
登录后复制
登录后复制

Hello, World! Your First JavaScript Programs

(剩余部分与原文类似,只是对语言进行了调整和部分段落合并,保持了原文意思不变。)

不要破坏网络

JavaScript语言开发中的一个重要概念是它必须向后兼容。也就是说,所有旧代码在由运行新规范的引擎解释时必须以相同的方式工作(这有点像说PlayStation 4仍然必须能够运行为PlayStation 1、2和3创建的游戏)。这是为了防止JavaScript通过进行会使某些网站上的旧代码无法在现代浏览器中按预期运行的重大更改而“破坏网络”。

因此,新版本的JavaScript不能做以前版本的语言中不可能做的事情。变化的只是实现特定功能的表示法,以使其更易于编写。这被称为语法糖,因为它允许以更简洁和更简洁的方式编写现有的代码片段。

所有版本的JavaScript都向后兼容这一事实意味着我们可以使用转译器将代码从一个版本的JavaScript转换为另一个版本。例如,您可以使用最新的JavaScript版本编写代码,然后将其转译为版本5代码,该代码几乎可以在任何浏览器中运行。

每年都有一个新的ECMAScript版本,这意味着在实现最新功能方面,浏览器可能总是稍有落后(它们正在更快地做到这一点,但大多数浏览器仍然需要两年时间才能支持ES6模块)。这意味着如果您想使用最新的编码技术,您可能最终需要使用转译器(例如Babel)。

常见问题解答(FAQ)关于你的第一个JavaScript程序

(此部分内容与原文类似,只是对语言进行了调整,使之更流畅自然。)

以上是你好世界!您的第一个JavaScript程序的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1421
52
Laravel 教程
1316
25
PHP教程
1266
29
C# 教程
1239
24
神秘的JavaScript:它的作用以及为什么重要 神秘的JavaScript:它的作用以及为什么重要 Apr 09, 2025 am 12:07 AM

JavaScript是现代Web开发的基石,它的主要功能包括事件驱动编程、动态内容生成和异步编程。1)事件驱动编程允许网页根据用户操作动态变化。2)动态内容生成使得页面内容可以根据条件调整。3)异步编程确保用户界面不被阻塞。JavaScript广泛应用于网页交互、单页面应用和服务器端开发,极大地提升了用户体验和跨平台开发的灵活性。

JavaScript的演变:当前的趋势和未来前景 JavaScript的演变:当前的趋势和未来前景 Apr 10, 2025 am 09:33 AM

JavaScript的最新趋势包括TypeScript的崛起、现代框架和库的流行以及WebAssembly的应用。未来前景涵盖更强大的类型系统、服务器端JavaScript的发展、人工智能和机器学习的扩展以及物联网和边缘计算的潜力。

JavaScript引擎:比较实施 JavaScript引擎:比较实施 Apr 13, 2025 am 12:05 AM

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

Python vs. JavaScript:学习曲线和易用性 Python vs. JavaScript:学习曲线和易用性 Apr 16, 2025 am 12:12 AM

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

JavaScript:探索网络语言的多功能性 JavaScript:探索网络语言的多功能性 Apr 11, 2025 am 12:01 AM

JavaScript是现代Web开发的核心语言,因其多样性和灵活性而广泛应用。1)前端开发:通过DOM操作和现代框架(如React、Vue.js、Angular)构建动态网页和单页面应用。2)服务器端开发:Node.js利用非阻塞I/O模型处理高并发和实时应用。3)移动和桌面应用开发:通过ReactNative和Electron实现跨平台开发,提高开发效率。

如何使用Next.js(前端集成)构建多租户SaaS应用程序 如何使用Next.js(前端集成)构建多租户SaaS应用程序 Apr 11, 2025 am 08:22 AM

本文展示了与许可证确保的后端的前端集成,并使用Next.js构建功能性Edtech SaaS应用程序。 前端获取用户权限以控制UI的可见性并确保API要求遵守角色库

使用Next.js(后端集成)构建多租户SaaS应用程序 使用Next.js(后端集成)构建多租户SaaS应用程序 Apr 11, 2025 am 08:23 AM

我使用您的日常技术工具构建了功能性的多租户SaaS应用程序(一个Edtech应用程序),您可以做同样的事情。 首先,什么是多租户SaaS应用程序? 多租户SaaS应用程序可让您从唱歌中为多个客户提供服务

从C/C到JavaScript:所有工作方式 从C/C到JavaScript:所有工作方式 Apr 14, 2025 am 12:05 AM

从C/C 转向JavaScript需要适应动态类型、垃圾回收和异步编程等特点。1)C/C 是静态类型语言,需手动管理内存,而JavaScript是动态类型,垃圾回收自动处理。2)C/C 需编译成机器码,JavaScript则为解释型语言。3)JavaScript引入闭包、原型链和Promise等概念,增强了灵活性和异步编程能力。

See all articles