JavaScript 入门手册(一)

news2025/1/22 15:46:17

目录

一、JavaScript 是什么?

1.1 JavaScript 介绍

1.2 JavaScript 与 ECMAScript 的关系

1.3 JavaScript 是脚本语言

1.4 JavaScript 的特点

1.5 运行 JavaScript

1.6 保留关键字

二、Node.js 是什么?

2.1 运行时是什么?

2.2 Node.js 的组成

小结

三、JavaScript 用法

3.1

中的 JavaScript 函数

3.2

中的 JavaScript 函数

3.3 外部引用 JavaScript

3.3.1 创建外部的 JavaScript 文件(例如:externalFirstFun.js):

3.3.2 引入外部的 JavaScript 文件

四、JavaScript 输出

4.1 使用 window.alert()

4.2 使用 console.log()

五、JavaScript 语法

5.1 JavaScript 字面量

5.2 JavaScript 变量

5.3 JavaScript 操作符

5.4 JavaScript 字母大小写

5.5 JavaScript 字符集

5.5.1 Unicode 字符集

5.5.2 HTML5 标准:Unicode UTF-8

六、JavaScript 语句

6.1 分号 ;

6.2 JavaScript 语句标识符

6.3 空格

6.4 对代码行进行折行

七、JavaScript 注释

相关推荐


一、JavaScript 是什么?

JavaScript 是 web 开发人员必须学习的 3 门语言中的一门:

  • HTML 定义了网页的内容

  • CSS 美化了网页的仰视

  • JavaScript 控制了网页的行为

1.1 JavaScript 介绍

        JavaScript(简称“JS”)是一种轻量级的面向对象的编程语言,既能用在浏览器中控制页面交互,也能用在服务器端作为网站后台(借助 Node.js),因此 JavaScript 是一种全栈式的编程语言。

        JavaScript 是一种跨平台的解释型语言,不需要提前编译,能在各种操作系统下运行。

1.2 JavaScript 与 ECMAScript 的关系

        ECMAScript(简称“ES”)是根据 ECMA-262 标准实现的通用脚本语言,ECMA-262 标准主要规定了这门语言的语法、类型、语句、关键字、保留字、操作符、对象等几个部分,目前 ECMAScript 的最新版是 ECMAScript6(简称“ES6”)。

        至于 JavaScript,有时人们会将 JavaScript 与 ECMAScript 看作是相同的,其实不然,JavaScript 中所包含的内容远比 ECMA-262 中规定的多得多,完整的 JavaScript 是由以下三个部分组成:

  • 核心(ECMAScript):提供语言的语法和基本对象;

  • 文档对象模型(DOM):提供处理网页内容的方法和接口;

  • 浏览器对象模型(BOM):提供与浏览器进行交互的方法和接口。

1.3 JavaScript 是脚本语言

  • JavaScript 是一种轻量级的编程语言。

  • JavaScript 是可插入 HTML 页面的编程代码。

  • JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

  • JavaScript 很容易学习。

1.4 JavaScript 的特点

  • 解释型语言: JavaScript是一种解释型语言,不需要编译成可执行代码,而是由解释器逐行解释执行。

  • 动态类型: JavaScript是一种动态类型语言,变量的类型在运行时可以动态确定,不需要在编写代码时显式声明类型。

  • 基于原型的语言: JavaScript中的对象是基于原型的,而不是基于类的。对象可以直接从其他对象继承属性。

  • 事件驱动: JavaScript常用于处理与用户交互的事件,例如点击、滚动、输入等。

  • 异步编程: JavaScript支持异步编程模式,通过回调函数、Promise、async/await等机制处理异步操作,如网络请求、文件读写等。

  • 跨平台性: JavaScript能够在各种平台上运行,包括Web浏览器、服务器端、移动应用等。

  • 脚本语言: JavaScript通常用作网页的脚本语言,用于增强网页的交互性和动态性。

  • 弱类型语言: JavaScript是一种弱类型语言,对变量的类型转换较为灵活,但也容易导致一些隐式类型转换的问题。

  • 丰富的生态系统: JavaScript拥有丰富的第三方库和框架,如React、Vue、Angular等,以及用于构建后端服务的Node.js等。

  • 与HTML和CSS的集成: JavaScript可以与HTML和CSS无缝集成,通过DOM操作实现网页内容和样式的动态变化。

        这些特点使得JavaScript成为一种广泛应用于Web开发、服务器端开发和移动应用开发等领域的重要编程语言。

1.5 运行 JavaScript

        作为一种脚本语言,JavaScript 代码不能独立运行,通常情况下我们需要借助浏览器来运行 JavaScript 代码,所有 Web 浏览器都支持 JavaScript。

        除了可以在浏览器中执行外,也可以在服务端或者搭载了 JavaScript 引擎的设备中执行 JavaScript 代码,浏览器之所以能够运行 JavaScript 代码就是因为浏览器中都嵌入了 JavaScript 引擎,常见的 JavaScript 引擎有:

  • V8:由Google开发,用于Chrome浏览器和Node.js等项目。

  • SpiderMonkey:由Mozilla开发,用于Firefox浏览器。

  • JavaScriptCore:由苹果开发,用于Safari浏览器和WebKit引擎。

  • Chakra:由Microsoft开发,用于Edge浏览器。

  • Rhino:由Mozilla基金会开发,是一个用Java编写的JavaScript引擎。

  • Nashorn:由Oracle开发,是一个用Java编写的JavaScript引擎,替代了Rhino,从JDK 8开始提供。

  • JerryScript:一个轻量级的JavaScript引擎,专为嵌入式系统和物联网设备设计。

  • QuickJS:由Fabrice Bellard开发,是一个快速、小巧的JavaScript引擎。

1.6 保留关键字

关键字按字母顺序帅次嘿嘿嘿
abstractelseinstanceofsuper
booleanenumintswitch
booleanenumintswitch
breakexportinterfacesynchronized
byteextendsletthis
casefalselongthrow
catchfinalnativethrows
charfinallynewtransient
classfloatnulltrue
const forpackagetry
continuefunctionprivatetypeof
debuggergotoprotectedvar
defaultifpublicvoid
deleteimplementsreturnvolatile
doimportshortwhile
doubleinstaticwith

二、Node.js 是什么?

        JavaScript 诞生于 1995 年,几乎是和互联网同时出现;Node.js 诞生于 2009 年,比 JavaScript 晚了 15 年左右。

        在 Node.js 之前,JavaScript 只能运行在浏览器中,作为网页脚本使用,为网页添加一些特效,或者和服务器进行通信。

        有了 Node.js 以后,JavaScript 就可以脱离浏览器,像其它编程语言一样直接在计算机上使用,想干什么就干什么,再也不受浏览器的限制了。

        Node.js 不是一门新的编程语言,也不是一个 JavaScript 框架,它是一套 JavaScript 运行环境,用来支持 JavaScript 代码的执行。用编程术语来讲,Node.js 是一个 JavaScript 运行时(Runtime)

JavaScript 和 Node.js 的关系:

  • Netscape 浏览器衍生出了 JavaScript 脚本,赋予网页编程能力;

  • Chrome 浏览器衍生了 V8 引擎,提高了 JavaScript 性能;

  • V8 引擎构建了 Node.js,拓展了 JavaScript 的编程能力;

  • Node.js 衍生了 Libuv 库,给网络开发增加了一款优秀的工具。

        Node.js 就是给 JavaScript 加持的Buff。

2.1 运行时是什么?

        所谓运行时,就是程序在运行期间需要依赖的一系列组件或者工具;把这些工具和组件打包在一起提供给程序员,程序员就能运行自己编写的代码了。

对于 JavaScript 来说,它在运行期间需要依赖以下组件:

  • 1.解释器:JavaScript 是一种脚本语言,需要一边解释一边运行,用到哪些源代码就编译哪些源代码,整个过程由解释器完成。没有解释器的话,JavaScript 只是一堆纯文本文件,不能被计算机识别。

  • 2.标准库:我们在 JavaScript 代码中会调用一些内置函数,这些函数不是我们自己编写的,而是标准库自带的。

  • 3.本地模块:所谓本地模块,就是已经被提前编译好的模块,它们是二进制文件,和可执行文件在内部结构上没有什么区别,只是不能单独运行而已。这些本地模块其实就是动态链接库(在 Windows 下是 .dll 文件),如果你使用过C语言、C++ 等编译型语言,那你应该能够更好地理解它。

JavaScript 的很多功能都需要本地模块的支持,比如:

  • Cookie 用于存储少量的用户数据,它是用户计算机上的一种小文件,使用 Cookie 必须有文件操作模块的支持。

  • Ajax 可以借助互联网从服务器请求数据,这是一种网络操作,必须有网络库的支持。

  • 一步一步跟踪代码的执行流程,从中发现逻辑错误,这个过程叫做调试,需要有调试器(Debugger)的支持。

  • JavaScript 可以操作 HTML,这需要 HTML 解析模块提前构建起 DOM 树。

        本地模块一般封装了通用功能,对性能要求较高,所以通常使用编译型语言来实现,比如C语言、C++、汇编语言等。

        JavaScript 解释器需要本地模块的支持,标准库在编写时也会调用本地模块的接口,而我们编写的 JavaScript 代码一般不会直接使用本地模块,所以 Web 前端程序员触及不到它们。

        本地模块是幕后英雄,它不显山露水,但是又不可或缺。

        解释器、标准库、本地模块等各种组件/工具共同支撑了 JavaScript 代码的运行,它们统称为 JavaScript 运行时。

        在 Node.js 之前,JavaScript 运行时被绑定在浏览器中,作为浏览器的各种模块出现。这意味着,要想运行 JavaScript 代码就必须启动浏览器,JavaScript 逃不出浏览器的手掌心,它的功能受到很大的限制,只能作为网页脚本使用。

2.2 Node.js 的组成

        Node.js 运行时主要由 V8 引擎、标准库和本地模块组成,尤其是本地模块的多少,从底层决定了 Node.js 功能的强弱。

  • 1.V8 引擎
    • V8 引擎就是 JavaScript 解释器,它负责解析和执行 JavaScript 代码。

    • V8 引擎借鉴了 Java 虚拟机和 C++ 编译器的众多技术,它将 JavaScript 代码直接编译成原生机器码,并且使用了缓存机制来提高性能,这使得 JavaScript 的运行速度可以媲美二进制程序。

  • 2.本地模块:Node.js 集成了众多高性能的开源库,它们使用 C/C++ 语言实现,比如:

模块说明
libuv一个跨平台的、基于事件驱动的异步 I/O 库。但是 libuv 不仅限于 I/O,它还提供了进程管理、线程池、信号处理、定时器等其它功能。
Linux中一切皆文件,这里的 I/O 不仅仅包括文件读写,还包括数据库读写、网络通信(socket)等。
nmpNode.js 包管理器,可以下载包、安装包、卸载包、更新包、上传包等。
http_parser一款由C语言编写的轻量级 HTTP 解析器,用以支持 Web 应用开发。
zlib工业级的数据压缩/解压模块,Nodejs 借助 zlib 来创建同步、异步或者流式的压缩/解压接口。
OpenSSL该模块提供了经过严密测试的许多加密/解密功能,现代 Web 依赖这些功能来实现安全性,比如 SSL 协议和 https 协议。
c-ares异步 DNS 查询和解析库。

        Node.js 直接在计算机上运行 JavaScript 代码,并且要赋予 JavaScript 强大的能力,所以它的本地模块和浏览器中的运行时有很多大区别,甚至说几乎没有什么关联。Node.js 几乎完全抛弃了浏览器,自己从头构建了一套全新的 JavaScript 运行时。

  • 3.标准库:本地模块使用 C/C++ 编写,而 Node.js 面向 JavaScript 开发人员,所以必须要封装本地模块的 C/C++ 接口,提供一套优雅的 JavaScript 接口给开发人员,并且要保持接口在不同平台(操作系统)上的一致性。

这套 JavaScript 接口,就是 Node.js 标准库。标准库是否优雅和强大,决定了 Node.js 的易用性,直接影响 Node.js 的市场表现。

小结

        V8 引擎和众多本地模块都是现成的,别人已经造好了轮子,Node.js 的主要工作就是选择合适的模块,将它们集成在一起,并编写好 JavaScript 接口。

        当然,并不是所有的本地模块都能找到合适的,Node.js 也自己编写了几个模块,典型的代表就是 Libuv。Libuv 是 Node.js 最核心最基础的模块,Node.js 完全基于 Libuv 而构建。

        你可能听说过 Node.js 采用了基于事件的、单线程的异步 I/O 架构,这是 Node.js 最大的特点,也是它和其它脚本语言最大的区别,Node.js 的这种能力就是依赖 Libuv 实现的。

 

Libuv 如此强大,官方决定将它从 Node.js 中剥离出来,作为一个单独的网络库发布,并且开源免费。现在的 Libuv 已经变得非常流行,和传统的 Libevent 和 libev 库并称为“C/C++ 三大网络库”。

        Node.js 之所以大名鼎鼎,主要是因为它采用了 V8 引擎和 Libuv 库:V8 引擎保证了 Node.js 运行高效,Libuv 库提供了基于事件循环的异步 I/O 能力。

三、JavaScript 用法

        HTML 中的 Javascript 脚本代码必须位于 <script> 与 </script> 标签之间。

        Javascript 脚本代码可被放置在 HTML 页面的 <body> 和 <head> 部分中。

3.1 <body> 中的 JavaScript 函数

        如需在 HTML 页面中插入 JavaScript,请使用 <script> 标签。 <script> 和 </script> 会告诉 JavaScript 在何处开始和结束。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title>初识JavaScript</title>
</head>

<body>

    <h2>
        此处为 body 开始,JavaScript 能够直接写入 HTML 输出流中:
        </h2>
    <script>
        document.write("<p>JavaScript 是 Web 的编程语言。</p>");
        document.write("<p>所有现代的 HTML 页面都可以使用 JavaScript。</p>");
        document.write("<p> JavaScript 非常容易学。</p>");
    </script>
    <h2>
        此处为 body 即将结束。
    </h2>

</body>

</html>

3.2 <head> 中的 JavaScript 函数

        在 HTML 文档中放入不限数量的脚本

        脚本可位于 HTML 的 <body> 或 <head> 部分中,或者同时存在于两个部分中。

        通常的做法是把函数放入 <head> 部分中,或者放在页面底部。这样就可以把它们安置到同一处位置,不会干扰页面的内容

        我们把一个 JavaScript 函数(sccFun)放置到 HTML 页面的 <head> 部分 试试:

<head>
    <script>
        function sccFun() {
            document.getElementById("demo").innerHTML = "第一个 JavaScript 函数";
        }
    </script>
</head>

<body>
    <h1>此处为 body 开始:</h1>
    <p id="demo">此处id 为 demo 的段落即将改变</p>
    <button type="button" onclick="sccFun()">点击这里</button>
    <h2>此处为 body 即将结束。</h2>
</body>

3.3 外部引用 JavaScript

        可以把脚本保存到外部文件中。外部文件通常包含被多个网页使用的代码。

        外部 JavaScript 文件的文件扩展名是 .js

        如需使用外部文件,请在 <script> 标签的 "src" 属性中设置该 .js 文件:

3.3.1 创建外部的 JavaScript 文件(例如:externalFirstFun.js):

document.getElementById("externalDemo").innerHTML = "你好,这是来自外部的 JavaScript 文件!";

3.3.2 引入外部的 JavaScript 文件

<body>
    <p id="externalDemo">此处 id 为externalDemo 的段落即将改变</p>
    <script src="js/externalFirstFun.js"></script>
</body>

四、JavaScript 输出

JavaScript 可以通过不同的方式来输出数据:

  • 使用 window.alert() 弹出警告框。

  • 使用 document.write() 方法将内容写到 HTML 文档中(3.1中已使用)。

  • 使用 innerHTML 写入到 HTML 元素(3.2和3.3.1中已使用)。

  • 使用 console.log() 写入到浏览器的控制台。

4.1 使用 window.alert()

        弹出警告框来显示数据:

<head>
    ......
    <script>
        function funAlert() {
            window.alert("弹弹弹,弹走小豆豆");
        }
    
    </script>
</head>
<body>
    <button type="button" onclick="funAlert()">点击这里 显示alert</button>
</body>

4.2 使用 console.log()

        如果你的浏览器支持调试,你可以使用 console.log() 方法在浏览器中显示 JavaScript 值。

        浏览器中启用调试模式(F12,Ctrl + Shift + I (Windows) 或Cmd + Opt + I (Mac) 页面右键菜单“检查”,浏览器菜单“开发者工具”), 在调试窗口中点击 "Console" 菜单。

<head>
    <script>
        function funAlert() {
            console.log("funAlert-弹弹弹,弹走小豆豆");
            window.alert("弹弹弹,弹走小豆豆");
        }
    
    </script>
</head>

<body>
    <h1>此处为 body 开始:</h1>
    <script>
        console.log("此处为 body 开始:");
    </script>
    <button type="button" onclick="funAlert()">点击这里 显示alert</button>
    <script>
        console.log("此处为 body 即将结束");
    </script>
    <h2>此处为 body 即将结束。</h2>
</body>

五、JavaScript 语法

        JavaScript 是一个程序语言。语法规则定义了语言结构。它是一个轻量级,但功能强大的编程语言。

5.1 JavaScript 字面量

在编程语言中,一般固定值称为字面量,如 3.14。

  • 数字(Number)字面量:可以是整数或者是小数,或者是科学计数(e)。

  • 符串(String)字面量:可以使用单引号或双引号。

  • 表达式字面量:用于计算。

  • 数组(Array)字面量:定义一个数组。

  • 对象(Object)字面量:定义一个对象。

  • 函数(Function)字面量:定义一个函数。

<head>
    <script>
        function addFun(a, b) { return a + b;}
    </script>
</head>

<body>
    <p>数字字面量:小数 <strong id="numInt">12345</strong></p>
    <p>数字字面量:整数 <strong id="numDouble">12345</strong></p>
    <p>数字字面量:科学计数法 <strong id="number">12345</strong></p>

    <p>字符串字面量:单引号 <strong id="str">12345</strong></p>
    <p>字符串字面量:双引号 <strong id="strDouble">12345</strong></p>
    <p>表达式字面量:加法 <strong id="add">12345</strong></p>
    <p>表达式字面量:乘法 <strong id="mul">12345</strong></p>
    <p>数组字面量: <strong id="array">12345</strong></p>
    <p>对象字面量: <strong id="obj">12345</strong></p>
    <p>函数字面量: <strong id="fun">12345</strong></p>
    <script>
        document.getElementById("numInt").innerHTML = 3.14;
        document.getElementById("numDouble").innerHTML = 1001;
        document.getElementById("number").innerHTML = 520e5;
        document.getElementById("str").innerHTML = '单引号';
        document.getElementById("strDouble").innerHTML = "双引号";
        document.getElementById("add").innerHTML = 9 + 9;
        document.getElementById("mul").innerHTML = "双引号";
        document.getElementById("array").innerHTML = [1, 3, 5, 7, 8, 10, 12];
        document.getElementById("obj").innerHTML = { name: "Sc", age: 18, studentID: 15 };
        document.getElementById("fun").innerHTML = addFun(45,80);
    </script>
</body>

5.2 JavaScript 变量

        变量用于存储数据值。JavaScript 使用关键字 var 来定义变量, 使用等号来为变量赋值。

变量是一个 名称 。字面量是一个
<body>
    <p>变量Str: <strong id="varNumber">12345</strong></p>

    <script>
        var strName = '帅次';
        document.getElementById("varNumber").innerHTML = strName;
    </script>
</body>

5.3 JavaScript 操作符

类型实例
赋值,算术和位运算符= + - * /
条件,比较及逻辑运算符== != < >
<body>
    <p>操作符: <strong id="ass">12345</strong></p>
    <p>比较运算符 <strong id="compare">12345</strong></p>
    <script>
        var x,y,z,p;
        x = 10;
        y = 20;
        z = (x+y)*12;
        document.getElementById("ass").innerHTML = z;
        p = x==y;//比较及逻辑运算符
        document.getElementById("compare").innerHTML = p;
    </script>
</body>

5.4 JavaScript 字母大小写

        JavaScript 对大小写是敏感的(区分大小写)。

        当编写 JavaScript 语句时,请留意是否关闭大小写切换键。

        函数 getElementById 与 getElementbyID 是不同的。

        同样,变量 sccFun 与 sccfun 也是不同的。

5.5 JavaScript 字符集

        JavaScript 使用 Unicode 字符集

        Unicode 覆盖了所有的字符,包含标点等字符。

        Unicode 标准是一个成功的创举,在 HTML、XML、Java、JavaScript、E-mail、ASP、PHP 中都得到实现。Unicode 标准也得到许多操作系统和所有现代浏览器的支持。

        Unicode 联盟与领先的标准开发组织合作,这些组织有 ISO、W3C 和 ECMA。

5.5.1 Unicode 字符集

        Unicode 可以由不同的字符集实现。最常用的编码是 UTF-8 和 UTF-16:

字符集描述
UTF-8UTF8 中的字符可以是 1 到 4 字节长。UTF-8 可以代表 Unicode 标准中的任何字符。UTF-8 向后兼容 ASCII。UTF-8 是电子邮件和网页的首选编码。
UTF-1616 位 Unicode 转换格式是一种可变长度的 Unicode 字符编码,能够编码整个 Unicode 指令表。UTF-16 主要用于操作系统和环境,如 Microsoft Windows、Java 和 .NET。

5.5.2 HTML5 标准:Unicode UTF-8

        因为 ISO-8859 中字符集大小是有限的,且在多语言环境中不兼容,所以 Unicode 联盟开发了 Unicode 标准。

        Unicode 标准覆盖了(几乎)所有的字符、标点符号和符号。

        Unicode 使文本的处理、存储和运输,独立于平台和语言。

        HTML-5 中默认的字符编码是 UTF-8。

        如果 HTML5 网页使用不同于 UTF-8 的字符,则需要在 <meta> 标签中指定,如下

<meta charset="ISO-8859-1">
Unicode 的前 128 个字符(与 ASCII 一一对应)使用一个与 ASCII二进制值相同的八位组进行编码,使有效的 ASCII 文本在进行 UTF-8 编码时也是有效的。

所有的 HTML 4 处理器支持 UTF-8,所有的 HTML 5 和 XML 处理器支持 UTF-8 和 UTF-16!

六、JavaScript 语句

        JavaScript 语句向浏览器发出的命令。语句的作用是告诉浏览器该做什么。

浏览器按照编写顺序依次执行每条语句。
<head>
    <script>
        function sccTest() { 
            document.getElementById("test1").innerHTML = "测试语句 1"
            document.getElementById("test2").innerHTML = "测试语句 2"
        }
    </script>
</head>

<body>
    <p>你好: <strong id="test1">12345</strong></p>
    <p>你好: <strong id="test2">12345</strong></p>
    <script>
         sccTest();
    </script>
</body>

6.1 分号 ;

        分号用于分隔 JavaScript 语句,通常我们在每条可执行的语句结尾添加分号。

        使用分号的另一用处是在一行中编写多条语句。

6.2 JavaScript 语句标识符

        JavaScript 语句通常以一个 语句标识符 为开始,并执行该语句。

        语句标识符是保留关键字不能作为变量名使用

语句描述
break用于跳出循环。
catch语句块,在 try 语句块执行出错时执行 catch 语句块。
continue跳过循环中的一个迭代。
do ... while执行一个语句块,在条件语句为 true 时继续执行该语句块。
for在条件语句为 true 时,可以将代码块执行指定的次数。
for ... in用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
function定义一个函数
if ... else用于基于不同的条件来执行不同的动作。
return退出函数
switch用于基于不同的条件来执行不同的动作。
throw抛出(生成)错误 。
try实现错误处理,与 catch 一同使用。
var声明一个变量。
while当条件语句为 true 时,执行语句块。

6.3 空格

        JavaScript 会忽略多余的空格。你可以向脚本添加空格,来提高其可读性。下面的str1、str2、str3代码是等效的:

<body>
    <p>str1-<strong id="str1">12345</strong></p>
    <p>str2-<strong id="str2">12345</strong></p>
    <p>str3-<strong id="str3">12345</strong></p>

    <script>
         var str1 = "21321";
         var str2 ="21321";
         var str3 =             "21321";
         document.getElementById("str1").innerHTML=str1;
         document.getElementById("str2").innerHTML=str2;
         document.getElementById("str3").innerHTML=str3;
    </script>
</body>

6.4 对代码行进行折行

        在文本字符串中使用反斜杠对代码行进行换行。如果不折行,有一些文案太长看着不舒服。

        document.write("<p>前端开发涉及到多种工具,用于提高开发效率、优化代码、测试应用程序等。</p>");
        document.write("<p>前端开发涉及到多种工具,用于\
        提高开发效率、优化代码、测试应用程序等。</p>");

七、JavaScript 注释

JavaScript 不会执行注释,注释可用于提高代码的可读性。

  • 单行注释以 // 开头。

  • 多行注释以 /* 开始,以 */ 结尾。

    <script>
        sccTest();
        var str1 = "21321";
        var str2 = "21321";
        var str3 = "21321";
        document.getElementById("str1").innerHTML = str1;
        //document.getElementById("str2").innerHTML = str2;
        /*
        document.getElementById("str3").innerHTML = str3;
        document.write("<p>前端开发涉及到多种工具,用于提高开发效率、优化代码、测试应用程序等。</p>");
        */
        document.write("<p>前端开发涉及到多种工具,用于\
        提高开发效率、优化代码、测试应用程序等。</p>");
    </script>

相关推荐

HTML 入门手册(一)

HTML 入门手册(二)  

CSS 入门手册(一)

CSS 入门手册(二)

JavaScript 入门手册(二)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1495630.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Ubuntu20.04安装并配置vscode

Ubuntu20.04安装并配置vscode vscode安装miniconda安装创建虚拟python3.8环境pytorch和匹配的cuda安装 vscode安装 VSCode可以通过 Snapcraft 商店或者微软源仓库中的一个 deb 软件包来安装。 我们这里选用安装VSCode snap版&#xff0c;打开你的终端(CtrlAltT)并且运行下面的…

LeetCode_25_困难_K个一组翻转链表

文章目录 1. 题目2. 思路及代码实现&#xff08;Python&#xff09;2.1 模拟 1. 题目 给你链表的头节点 h e a d head head &#xff0c;每 k k k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k k k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节…

VTK的编译和部署,配合c++和visual studio2022,VTK开发环境的配置

1.下载 在官网选择最新的版本 Download | VTK 下载之后进行解压&#xff0c;然后再里面创建build目录&#xff0c;方便后面使用cmake进行编译 2.对源码进行编译 打卡Cmake&#xff0c;如图操作 可以看到点击configure之后&#xff0c;cmake对我们的代码在进行处理 处理完成之…

openssl3.2 - exp - 产生随机数

文章目录 openssl3.2 - exp - 产生随机数概述笔记END openssl3.2 - exp - 产生随机数 概述 要用到openssl产生的随机数, 查了资料. 如果用命令行产生随机数, 如下: openssl rand -hex -num 6 48bfd3a64f54单步跟进去, 看到主要就是调用了一个RAND_bytes(), 没其他了. 官方说…

【vue.js】文档解读【day 2】 | 计算属性

如果阅读有疑问的话&#xff0c;欢迎评论或私信&#xff01;&#xff01; 本人会很热心的阐述自己的想法&#xff01;谢谢&#xff01;&#xff01;&#xff01; 文章目录 计算属性计算属性 vs 方法可计算属性Getter不应有副作用避免直接修改计算属性值 计算属性 我们已经学习…

基于SpringBoot+Vue+ElementUI+Mybatis前后端分离管理系统超详细教程(二)

学习后端CRUD操作 书接上文&#xff0c;我们学习了前后端分离项目的基础环境配置和用户管理模块的前后端基础搭建&#xff0c;以下链接是上一节教程内容详细步骤&#xff0c;友友们可以跟着步骤实操。本节课程我们在前面项目的基础上接着学习后端CRUD操作&#xff0c;真正打通数…

【你也能从零基础学会网站开发】Web建站之HTML+CSS入门篇 网站开发的基本概念与站点文件的管理

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;web开发者、设计师、技术分享 &#x1f40b; 希望大家多多支持, 我们一起学习和进步&#xff01;&#x1f604; &#x1f3c5; 如果对你有帮助的话&#xff0c;欢迎评论 &#x1f4ac;点赞&#x1f44d;&…

leetcode2

翻转链表 struct ListNode* reverseList(struct ListNode* head) {struct ListNode* prev NULL;struct ListNode* curr head;while (curr ! NULL) {struct ListNode* nextTemp curr->next;//nextTemp的作用是为了记录&#xff0c;以便再反转后可以curr->next prev; …

聚观早报 | ChatGPT新增朗读功能;vivo X Fold3细节曝光

聚观早报每日整理最值得关注的行业重点事件&#xff0c;帮助大家及时了解最新行业动态&#xff0c;每日读报&#xff0c;就读聚观365资讯简报。 整理丨Cutie 3月6日消息 ChatGPT新增朗读功能 vivo X Fold3细节曝光 魅族21 PRO开启内测 Anthropic推出Claude 3系列 海底捞…

基于Mindspore,通过Resnet50迁移学习实现猫十二分类

使用平台介绍 使用平台&#xff1a;启智AI协作平台 使用数据集&#xff1a;百度猫十二分类 数据集介绍 有cat_12_train和cat_12_test和train_list.txt train_list.txt内有每张图片所对应的标签 Minspore部分操作科普 数据集加载 Mindspore加载图片数据集就直接调整成这种…

6020一拖二快充线:手机充电的革命性创新

在快节奏的现代生活中&#xff0c;手机已不仅仅是一个通讯工具&#xff0c;更是我们工作、学习和娱乐的得力助手。然而&#xff0c;手机的电量问题一直是困扰着我们的难题。为了解决这个问题&#xff0c;市场上出现了一种名为“一拖二快充线”的充电设备&#xff0c;它不仅具备…

事件对象与环境对象

一、事件对象 事件对象里有事件触发时的相关信息&#xff0c;包括属性和方法。注册时间中&#xff0c;回调函数的第一个参数就是事件对象&#xff0c;一般命名为event、ev、e。其中e.target是主要对象&#xff0c;target是事件源对象&#xff0c;即当前触发元素。 <button …

Midjourney入门:AI绘画真的能替代人类的丹青妙笔吗?

名人说&#xff1a;一花独放不是春&#xff0c;百花齐放花满园。——《增广贤文》 作者&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 目录 一、简要介绍1、Midjourney2、使用方法 二、绘画1、动物类2、风景类3、动漫类4、艺…

Unity:Animation 三 Playable、ImportModel

目录​​​​​​​ 1. Playables API 1.1 Playable vs Animation 1.2 Advantages of using the Playables API 1.3 PlayableGraph Visualizer 2. Creating models outside of Unity 2.1 Preparing your model files for export 2.1.1 Scaling factors 2.1.2 优化模型文…

腾讯云2核2G3M轻量应用服务器优惠价格61元一年

腾讯云2核2G3M轻量应用服务器优惠价格61元一年&#xff0c;200GB月流量、40GB SSD云硬盘。 一张表看懂腾讯云服务器租用优惠价格表&#xff0c;一目了然&#xff0c;腾讯云服务器分为轻量应用服务器和云服务器CVM&#xff0c;CPU内存配置从2核2G、2核4G、4核8G、8核16G、4核16…

网络编程:数据库实现增删改

1.数据库实现增删改 程序代码&#xff1a; 1 #include<myhead.h>2 //定义添加数据函数3 int do_add(sqlite3*ppDb)4 {5 //准备sql语句6 int add_numb;//工号7 char add_name[20];//姓名8 double add_salary;9 printf("请输入要添加的工号:&quo…

网康科技 NS-ASG 应用安全网关 SQL注入漏洞复现(CVE-2024-2022)

0x01 产品简介 网康科技的NS-ASG应用安全网关是一款软硬件一体化的产品,集成了SSL和IPSec,旨在保障业务访问的安全性,适配所有移动终端,提供多种链路均衡和选择技术,支持多种认证方式灵活组合,以及内置短信认证、LDAP令牌、USB KEY等多达13种认证方式。 0x02 漏洞概述 …

ArmSoM规划开发基于RK3576的开发套件

ArmSoM正计划推出一款新的产品&#xff0c;这款产品将采用强大的RK3576芯片。 本文将为您介绍我们的新产品搭载的RK3576性能参数&#xff0c;以及它如何为您提供卓越的性能和功能。 RK3576处理器 RK3576处理器是一款强大的处理器&#xff0c;具备出色的性能和多样化的功能&a…

机器学习的边界与实际应用

目录 前言1 机器学习的广泛适用性1.1. 利用输入输出映射1.2. 大量的可用数据 2 机器学习能做的事情举例2.1 自动驾驶2.2 用户请求处理2.3 有大量数据的医学影像诊断 3 机器学习不能做的事情举例3.1 市场分析报告3.2 感同身受的邮件回复3.3 手势意图判断3.4 少量数据的医学影像诊…

NotePad++下载

notepad官网地址是https://notepad-plus-plus.org/。提供了许多强大的功能和工具&#xff0c;使其成为许多程序员和开发人员的首选工具。 Notepad 是一款广受欢迎的开源文本编辑器&#xff0c;它提供了许多强大的功能和工具&#xff0c;使其成为许多程序员和开发人员的首选工具…