add(VS Code配置): 突出显示成对的括号

This commit is contained in:
qianguyihao 2023-10-05 20:47:47 +08:00
parent e6ef3c9113
commit 1482ea8b94
3 changed files with 58 additions and 49 deletions

View File

@ -579,7 +579,18 @@ VS Code 会根据你所打开的文件来决定该使用空格还是制表。也
打开设置项,搜索`files.trimTrailingWhitespace`,将选项勾选,即可在保存文件时自动删除行尾的空格。
#### 17、突出显示成对的括号
我们可以用不同颜色显示代码中成对的括号,并用连线标注括号范围。简称**彩虹括号**。
最早是通过`Bracket Pair Colorizer 2`插件支持的,但是这个插件已经被废弃了,,因为 VS Code 已经内置了该功能。我们可以通过 VS Code的如下配置项达到效果
```json
{
"editor.bracketPairColorization.enabled": true,
"editor.guides.bracketPairs":"active"
}
```
> 接下来,我们来讲一些更高级的操作。
@ -1236,16 +1247,10 @@ ES6 语法智能提示,支持快速输入。
### 4、代码显示增强插件
#### Bracket Pair Colorizer 2突出显示成对的括号【荐】
`Bracket Pair Colorizer 2`插件:以不同颜色显示成对的括号,并用连线标注括号范围。简称**彩虹括号**。
#### highlight-icemode选中相同的代码时让高亮显示更加明显
另外,还有个`Rainbow Brackets`插件,也可以突出显示成对的括号。
#### highlight-icemode选中相同的代码时让高亮显示更加明显【荐】
VSCode 自带的高亮显示,实在是不够显眼。用插件支持一下吧。
VSCode 自带的高亮显示,实在是不够显眼。可以用插件支持一下。
所用了这个插件之后VS Code 自带的高亮就可以关掉了:

View File

@ -227,7 +227,7 @@ ECMAScript 在 2015 年 6 月,发布了 ECMAScript 6 版本ES6语言
Brendan Eich 这位天才只用了10天就设计出了 JS但这门语言当时更像是一个[大杂烩](https://wangdoc.com/javascript/basic/history)
- 基本语法:借鉴 C 语言和 Java 语言。
- 数据类型和数据结构:借鉴 Java 语言,包括将值分成原始值和对象两大类。
- 数据类型和数据结构:借鉴 Java 语言,包括将值分成原始值和对象两大类。
- 函数:借鉴 Scheme 语言和 Awk 语言,将函数当作第一等公民,并引入闭包。
- 基于原型的继承机制:借鉴 Self 语言Smalltalk 的一种变种)。
- 正则表达式:借鉴 Perl 语言。
@ -237,7 +237,6 @@ Brendan Eich 这位天才只用了10天就设计出了 JS但这门语言当
十八世纪英国文学家约翰逊博士有一句名言说得好“这个作品是好的也是原创的它的优秀之处并非原创它的原创之处并不优秀。”It is both good and original; but the part that is good is not original, and the part that is original is not good.
后来随着ES6语法的不断改进JS语言越来越优秀。ECMA 和 ECMAScript 赋予了 JavaScript 新的能力和活力。
### JavaScript 的发展:蒸蒸日上
@ -289,11 +288,11 @@ JS正在越来越多的场景和环境中得到应用具体包括
### JavaScript 入门易学性
- JavaScript 对初学者比较友好。可以使用任何文本编辑工具编写,只需要浏览器就可以执行程序。
- JavaScript 对初学者比较友好。可以使用任何文本编辑工具编写,只需要浏览器就可以执行程序。
- JavaScript 是有界面效果的相比之下C 语言只有白底黑字)。
- JavaScript 是有界面效果的相比之下C 语言只有白底黑字)。
- JavaScript 的入门较简单进阶不易。比如JS 是**弱变量类型**的语言,变量只需要用 var/let/const 来声明。而 Java 中变量的声明,要根据变量的类型来定义。
- JavaScript 的入门较简单进阶不易。比如JS 是**弱变量类型**的语言,变量只需要用 var/let/const 来声明。而 Java 中变量的声明,要根据变量的类型来定义。
Java 中需要这样定义变量:
@ -328,11 +327,11 @@ let c;
JavaScript 基础分为三个部分:
- **ECMAScript**JavaScript 的**语法标准**。包括变量、表达式、运算符、函数、if 语句、for 语句等。
- **ECMAScript**JavaScript 的**语法标准**。包括变量、表达式、运算符、函数、if 语句、for 语句等。
- **DOM**Document Object Model文档对象模型JS 操作**页面上的元素**(标签)的 API。比如让盒子移动、变色、改变大小、轮播图等等。
- **DOM**Document Object Model文档对象模型JS 操作**页面上的元素**(标签)的 API。比如让盒子移动、变色、改变大小、轮播图等等。
- **BOM**Browser Object Model浏览器对象模型JS 操作**浏览器部分功能**的 API。通过 BOM 可以操作浏览器窗口,比如弹框、控制浏览器跳转、获取浏览器分辨率等等。
- **BOM**Browser Object Model浏览器对象模型JS 操作**浏览器部分功能**的 API。通过 BOM 可以操作浏览器窗口,比如弹框、控制浏览器跳转、获取浏览器分辨率等等。
通俗理解就是ECMAScript 是 JS 的语法DOM 和 BOM 是浏览器运行环境为 JS 提供的 API。
@ -342,7 +341,6 @@ JavaScript 基础分为三个部分:
2、遵守ECMAScript 标准。
3、单线程。
## 参考链接
- [编程语言的一些概念](https://jameszhan.github.io/2014/09/25/programming-languages-concepts.html)
@ -353,7 +351,6 @@ JavaScript 基础分为三个部分:
![img](https://img.smyhvae.com/v2-fcdbef5c589522df3960e4cea9825a71_1440w.png)
- [汇编语言(转) | Xian Rong](https://xianrong.github.io/2017/11/14/%E6%B1%87%E7%BC%96%E8%AF%AD%E8%A8%80%28%E8%BD%AC%29/)
## 赞赏作者

View File

@ -38,11 +38,11 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
解释:
- 可以将单行或少量 JS 代码写在 HTML 标签的事件属性中(以 on 开头的属性),比如放在上面的 `onclick`点击事件中。
- 可以将单行或少量 JS 代码写在 HTML 标签的事件属性中(以 on 开头的属性),比如放在上面的 `onclick`点击事件中。
- 这种书写方式,不推荐使用,原因是:可读性差,尤其是需要编写大量 JS 代码时,很难维护;引号多层嵌套时,也容易出错。
- 这种书写方式,不推荐使用,原因是:可读性差,尤其是需要编写大量 JS 代码时,很难维护;引号多层嵌套时,也容易出错。
- 关于代码中的「引号」,在 HTML 标签中我们推荐使用双引号JS 中推荐使用单引号。
- 关于代码中的「引号」,在 HTML 标签中我们推荐使用双引号JS 中推荐使用单引号。
### 方式 2、内嵌式内联式
@ -68,11 +68,11 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
解释:
- text 表示纯文本,因为 JavaScript 代码本身就是纯文本。
- tyue属性中的text 表示纯文本,因为 JavaScript 代码本身就是纯文本。当然type属性可以省略因为 JavaScript 是所有现代浏览器以及 HTML5 中的默认脚本语言。
- 可以将多行 JS 代码写到 `<script>` 标签中。
- 可以将多行 JS 代码写到 `<script>` 标签中。
- 内嵌式 JS 是学习时常用的书写方式。
- 内嵌式 JS 是学习时常用的书写方式。
### 方式 3外链式
@ -91,10 +91,11 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
</html>
```
**分析**
解释
- 上面这段代码,依然是放到 body 标签里,可以和内嵌的 JS 代码并列。
- 上方代码的 script 标签已经引入了外部 JS 文件,所以这个标签里面,不可以再写 JS 代码。
- 上面这段代码,依然是放到 body 标签里,可以和内嵌的 JS 代码并列。
- 上方代码的 script 标签已经引入了外部 JS 文件,所以这个标签里面,不可以再写 JS 代码。
- 方式2和方式3不能混用。
**总结**
@ -106,7 +107,9 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
上面的三种方式有个共同的地方是JS 代码都是写在 body 标签中的,准确来说,是在页面标签元素(比如 `title` 标签)的后面,在 `</body>`结束标签的前面。
为什么一般是按这样的顺序来写呢?这是因为:浏览器默认会**从上至下**解析网页(这句话很重要)。当你需要通过 JS 来操作界面上的标签元素时,假如将 JS 代码、`<script>``<head>` JS
为什么一般是按这样的顺序来写呢?这是因为:浏览器默认遵循**HTML文档**的加载顺序,即按照**从上至下**的加载顺序解析网页这句话很重要。所以通常情况下我们会把JS代码写在 body 内部的末尾。
然而,当你需要通过 JS 来操作界面上的标签元素时,假如将 JS 代码或者`<script>``<head>`HTML JS
**重点来了:**当你**需要通过 JS 来操作界面上的标签元素**时,如果实在想把 JS 写到`<head>`标签中,那么就必须用 window.onload 将 JS 代码进行包裹。代码格式如下:
@ -123,20 +126,20 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
我们可以根据具体需要来决定,将 window.onload 写在 `<head>`标签中,或者写在`<script>`标签中。
### `<noscript> ` 标签浏览器不支持JS脚本时的降级方案
### `<noscript>` 标签浏览器不支持JS脚本时的降级方案
`<noscript>` 标签是一种HTML标签用于提供在浏览器禁用JavaScript或无法执行JavaScript脚本时的替代内容。它允许网页开发人员在需要时向用户显示备用内容。这有助于提高网站的可访问性和用户体验。
`<noscript>` 标签是一种HTML标签用于提供在浏览器禁用JavaScript或无法执行JavaScript脚本时的替代内容。它允开发者在需要时向用户显示备用内容。这有助于提高网站的可访问性和用户体验。
如果有些浏览器不支持 JS 脚本或者用户禁用了浏览器的JS脚本如下图那么该如何给用户提供一个友好的提示呢我们可以通过 `<noscript>` 标签作为**降级**的处理方案。
![image-20231005161720817](https://img.smyhvae.com/202310051617910.png)
![](https://img.smyhvae.com/202310051617910.png)
`<noscript>` 标签的基础语法:
```html
<noscript>
<!-- 降级方案:这里放置备用内容,当浏览器禁用 JS 或者浏览器不支持 JS 时将显示 -->
<p>请启用JavaScript以获得最佳网站体验。</p>
<!-- 降级方案:这里放置备用内容,当浏览器禁用 JS 或者浏览器不支持 JS 时将显示 -->
<p>请启用JavaScript以获得最佳网站体验。</p>
</noscript>
```
@ -147,7 +150,7 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
## JavaScript 一些简单的语法规则
学习程序,是有规律可循的,程序会有有相同的部分,这些部分就是一种规定,不能更改,我们称之为:语法。我们先来了解一个简单的语法规则。
学习编程语言,是有规律可循的,程序会有相同的部分,这些部分就是一种规定,不能更改,我们称之为:语法。我们先来了解一个简单的语法规则。
1、JS 对换行、缩进、空格不敏感。每一条语句以分号结尾。
@ -170,13 +173,17 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
</script>
```
2、每一条语句末尾要加上**分号**。虽然分号不是必须加的,但如果不写分号,浏览器会自动添加分号,导致消耗一些系统资源和性能,甚至有可能**添加错误**。
2、每一条语句末尾建议加上**分号**。
3、所有的符号都是英文的。比如**括号**、引号、分号。
当存在换行符line break大多数情况下可以省略分号JavaScript 会将换行符理解成“隐式”的分号,进而自动添加分号。
也就是说,分号不是必须加的,如果不写分号,浏览器会在换行符的位置自动添加分号,但是会消耗一些系统资源和性能,甚至有可能**添加错误**导致一些奇怪的bug。
3、所有的符号都是英文的比如括号、引号、分号。
如果你用的是搜狗拼音,**建议不要用 shift 切换中英文**(可以在搜狗软件里进行设置),不然很容易输入中文的分号;建议用 ctrl+space 切换中英文输入法。
4、JS 严格区分大小写。
4、JS 严格区分大小写。HTML和CSS不区分大小写但是 JS 严格区分大小写。
## 前端代码的注释
@ -218,12 +225,12 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
```html
<style type="text/css">
/* 我是 CSS 注释 */
p {
font-weight: bold;
font-style: italic;
color: red;
}
/* 我是 CSS 注释 */
p {
font-weight: bold;
font-style: italic;
color: red;
}
</style>
```
@ -241,8 +248,8 @@ JS 代码的书写位置在哪里呢?这个问题,也可以理解成:引
```js
/*
多行注释1
多行注释2
多行注释1
多行注释2
*/
```
@ -269,7 +276,7 @@ VS Code --> 首选项 --> 键盘快捷方式 --> 查找“注释”这两个字
推荐阅读:
- 代码审查 review 指南https://lib.jimmysong.io/eng-practices/review/
- 代码审查 review 指南:<https://lib.jimmysong.io/eng-practices/review/>
## JavaScript 输出语句
@ -341,8 +348,8 @@ console.log(a);
**alert()和 prompt()的区别:**
- alert() 语句中可以输出数字和字符串如果要输出字符串则必须用引号括起来prompt()语句中,用户不管输入什么内容,都是字符串。
- prompt() 会返回用户输入的内容。我们可以用一个变量,来接收用户输入的内容。
- alert() 语句中可以输出数字和字符串如果要输出字符串则必须用引号括起来prompt()语句中,用户不管输入什么内容,都是字符串。
- prompt() 会返回用户输入的内容。我们可以用一个变量,来接收用户输入的内容。
### 网页内容区域输出document.write()语句
@ -394,4 +401,4 @@ console.error('千古壹号3'); //错误打印
创作不易,你的赞赏和认可,是我更新的最大动力:
![](https://img.smyhvae.com/20220401_1800.jpg)
![](https://img.smyhvae.com/20220401_1800.jpg)