From 6e43ebdacc402849e9479b414aef0516abb2b27a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B?= <3322619096@qq.com> Date: Fri, 25 Oct 2024 00:01:05 +0000 Subject: [PATCH 1/5] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=85=B3=E6=9D=BE?= =?UTF-8?q?=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\205\263\346\235\276\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\205\263\346\235\276\346\266\233/.keep" diff --git "a/\345\205\263\346\235\276\346\266\233/.keep" "b/\345\205\263\346\235\276\346\266\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From c287e62a3e8aa7f184e2a2357b41aaabc102f083 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B?= <3322619096@qq.com> Date: Fri, 25 Oct 2024 00:01:23 +0000 Subject: [PATCH 2/5] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\205\263\346\235\276\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\345\205\263\346\235\276\346\266\233/.keep" diff --git "a/\345\205\263\346\235\276\346\266\233/.keep" "b/\345\205\263\346\235\276\346\266\233/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee From 8b3a2873f4fda2b5e87d1eab0a9d46f1a200ecfa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B?= <3322619096@qq.com> Date: Fri, 25 Oct 2024 00:01:55 +0000 Subject: [PATCH 3/5] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20=E5=85=B3=E6=9D=BE?= =?UTF-8?q?=E6=B6=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\205\263\346\235\276\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 "\345\205\263\346\235\276\346\266\233/.keep" diff --git "a/\345\205\263\346\235\276\346\266\233/.keep" "b/\345\205\263\346\235\276\346\266\233/.keep" new file mode 100644 index 0000000..e69de29 -- Gitee From b86911358d138a89911dc9b03a3ec538a91980a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B?= <3322619096@qq.com> Date: Fri, 25 Oct 2024 00:03:41 +0000 Subject: [PATCH 4/5] =?UTF-8?q?add=20=E5=85=B3=E6=9D=BE=E6=B6=9B/20241024j?= =?UTF-8?q?s=E7=AC=AC=E4=B8=80=E8=AF=BE.md.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 关松涛 <3322619096@qq.com> --- ...js\347\254\254\344\270\200\350\257\276.md" | 443 ++++++++++++++++++ 1 file changed, 443 insertions(+) create mode 100644 "\345\205\263\346\235\276\346\266\233/20241024js\347\254\254\344\270\200\350\257\276.md" diff --git "a/\345\205\263\346\235\276\346\266\233/20241024js\347\254\254\344\270\200\350\257\276.md" "b/\345\205\263\346\235\276\346\266\233/20241024js\347\254\254\344\270\200\350\257\276.md" new file mode 100644 index 0000000..4b7fef8 --- /dev/null +++ "b/\345\205\263\346\235\276\346\266\233/20241024js\347\254\254\344\270\200\350\257\276.md" @@ -0,0 +1,443 @@ +第一章,与君初相见 +第一节 +JavaScript 简介 +JavaScript 是什么: + +JavaScript 是一种运行在浏览器的脚本编程语言。它不需要编译,可直接在浏览器上运行。 + +JavaScript 由什么组成: + +ECMAScript (基础语法)和 Web APIs (DOM、BOM)。 + +ECMAScript: 规定了js基础语法核心知识。 +比如:变量、分支语句、循环语句、对象等等 +Web APIs : +DOM 操作文档,比如对页面元素进行移动、大小、添加删除等操作 +BOM 操作浏览器,比如页面弹窗,检测窗口宽度、存储数据到浏览器等等 +感受一下 + +JavaScript 书写位置 +JavaScript 程序不能独立运行,它需要被嵌入 HTML 中,然后浏览器才能执行 JavaScript 代码。通过 script 标签将 JavaScript 代码引入到 HTML 中,有三种方式: + +1.内部方式 +通过 script 标签包裹 JavaScript 代码 + + + + + + JavaScript 基础 - 内部引入方式 + + + + + + +2.外部方式 +一般将 JavaScript 代码写在独立的以 .js 结尾的文件中,然后通过 script 标签的 src 属性引入 + +// demo.js +document.write('前端技术!') + + + + + JavaScript 基础 - 外部引入方式 + + + + + + +如果 script 标签使用 src 属性引入了某 .js 文件,那么 标签的代码会被忽略!!!如下代码所示: + + + + + + JavaScript 基础 - 外部引入方式 + + + + + + +3.行内方式 +在HTML文档中可以在标签、标签中使用JavaScript脚本作为它们的属性值。 + + + + + + JavaScript 基础 - 行内引入方式 + + + + 测试 + + + +注释和结束符 +通过注释可以屏蔽代码被执行或者添加备注信息,JavaScript 支持两种形式注释语法: + +单行注释 +使用 // 注释单行代码 + + + + + + JavaScript 基础 - 注释 + + + + + + +多行注释 +使用 /* */ 注释多行代码 + + + + + + JavaScript 基础 - 注释 + + + + + + +注:编辑器中单行注释的快捷键为 ctrl + /、多行注释快捷键为alt + shift + a + +结束符 +在 JavaScript 中 ; 代表一段代码的结束,多数情况下可以省略 ; 使用回车(enter)替代。 + + + + + + JavaScript 基础 - 结束符 + + + + + + +对于初学者,建议以;号来结束代码; + +文档输出内容 +向 body 内输出内容 + +// 输出一段文字内容 +document.write("我是 JS 输出的内容"); + +// 输出一个一级标签 +document.write("

我是一个一级标签

"); +网页弹出警示框 + +alert("网页弹窗"); +向控制台输出内容,常用于调试 + +console.log("控制台输出内容"); +输入语法 +显示对话框,对话框内包含一段文字信息,用来提示用户输入内容 + +prompt("请输入一段内容"); +代码执行顺序 +按照 HTML 文档流顺序执行 JavaScript 代码 +alert() 和 prompt() 会跳过页面渲染先被执行 +定义:计算机用于存储数据的容器,可以让计算机有记忆。(注意:变量不是数据本身,它们仅仅是一个用于存储数值的容器) + +变量的基本使用 +1.声明变量 +语法: + +let 变量名; +let 变量名 = 值, + 变量名 = 值; +声明变量有两部分构成:声明关键字、变量名 + +let 即关键字,所谓关键字是系统提供的专门声明变量的词语 + +let age; +let money; +let text; + +let num1 = 20, + num2 = 30; +2.变量赋值 +语法: + +// 声明变量 +let age; + +// 进行赋值 +age = 18; + +// 声明同时并赋值(变量的初始化) +let num = 20; +3.更新变量 +语法: + +// 变量初始化 +let age = 18; + +// 更新变量 +age = 19; +变量的其他初始化(不推荐使用) +let name = prompt("请输入姓名"); +变量的本质 +内存:计算机中存储数据的地方,相当于一个空间 +变量:程序在内存中申请的一块用于存放数据的小空间 +变量的命名规则与规范 +规则 +JavaScript 内部已占用于单词(关键字或保留字)不允许使用 +只能由下划线 _ 、字母、数字、 $ 组成,且不可以以数字开头 +字母严格区分大小写,如 Age 和 age 是不同的变量 +规范 +尽量保证变量具有一定的语义,见字知义 + +遵守小驼峰命名法:即第一个单词首字母小写,后面每个单词首字母大写 + +例: userName userId userNameOld + +关键字 +JavaScript 使用专门的关键字 let 和 var 来声明(定义)变量,在使用时需要注意一些细节: + +以下是使用 let 时的注意事项: + +允许声明和赋值同时进行 +不允许重复声明 +允许同时声明多个变量并赋值 +JavaScript 中内置的一些关键字不能被当做变量名 +以下是使用 var 时的注意事项: + +允许声明和赋值同时进行 +允许重复声明 +允许同时声明多个变量并赋值 +大部分情况使用 let 和 var 区别不大,但是 let 相较 var 更严谨,因此推荐使用 let,后期会更进一步介绍二者间的区别。 + +常量 +概念:使用 const 声明的变量称为“常量”。 + +使用场景:当某个变量永远不会改变的时候,就可以使用 const 来声明,而不是let。 + +命名规范:和变量一致 + +const PI = 3.14 +注意: 常量不允许重新赋值,声明的时候必须赋值(初始化) + +数据类型 +计算机世界中的万事万物都是数据。 + +计算机程序可以处理大量的数据,为了方便数据的管理,将数据分成了不同的类型: + +JavaScript的数据类型有数值,字符串,布尔, + +注:通过 typeof 关键字检测数据类型 + + + + + + JavaScript 基础 - 数据类型 + + + + + + +数值类型 number +即我们数学中学习到的数字,可以是整数、小数、正数、负数 + + + + + + JavaScript 基础 - 数据类型 + + + + + + +JavaScript 中的数值类型与数学中的数字是一样的,分为正数、负数、小数等。 + +字符串类型 string +通过单引号( '') 、双引号( "")或反引号`包裹的数据都叫字符串,单引号和双引号没有本质上的区别,推荐使用单引号。 + +`反引号标记的字符串,叫模板字符串 + +注意事项: + +无论单引号或是双引号必须成对使用 +单引号/双引号可以互相嵌套,但是不以自已嵌套自已 +必要时可以使用转义符 \,输出单引号或双引号 + + + + + JavaScript 基础 - 数据类型 + + + + + + +布尔类型 +表示肯定或否定时在计算机中对应的是布尔类型数据,它有两个固定的值 true 和 false,表示肯定的数据用 true,表示否定的数据用 false。 + + + + + + JavaScript 基础 - 数据类型 + + + + + + +undefined +未定义是比较特殊的类型,只有一个值 undefined,只声明变量,不赋值的情况下,变量的默认值为 undefined,一般很少【直接】为某个变量赋值为 undefined。 + + + + + + JavaScript 基础 - 数据类型 + + + + + + +注:JavaScript 中变量的值决定了变量的数据类型。 + +类型转换 +理解弱类型语言的特征,掌握显式类型转换的方法 + +在 JavaScript 中数据被分成了不同的类型,如数值、字符串、布尔值、undefined,在实际编程的过程中,不同数据类型之间存在着转换的关系。 + +隐式转换 +某些运算符被执行时,系统内部自动将数据类型进行转换,这种转换称为隐式转换。 + + + + + + JavaScript 基础 - 隐式转换 + + + + + +注:数据类型的隐式转换是 JavaScript 的特征,后续学习中还会遇到,目前先需要理解什么是隐式转换。 + +**模板字符串用s{}实现变量与字符串的拼接 + +显式转换 +编写程序时过度依靠系统内部的隐式转换是不严禁的,因为隐式转换规律并不清晰,大多是靠经验总结的规律。为了避免因隐式转换带来的问题,通常根逻辑需要对数据进行显示转换。 + +Number +通过 Number 显示转换成数值类型,当转换失败时结果为 NaN(Not a Number)即不是一个数字。 + + + + + + JavaScript 基础 - 隐式转换 + + + + + \ No newline at end of file -- Gitee From c4f9d1dbd25fb9e7c755d0564fcb58a7448f1a88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B?= <3322619096@qq.com> Date: Fri, 25 Oct 2024 00:03:57 +0000 Subject: [PATCH 5/5] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20?= =?UTF-8?q?=E5=85=B3=E6=9D=BE=E6=B6=9B/.keep?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "\345\205\263\346\235\276\346\266\233/.keep" | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 "\345\205\263\346\235\276\346\266\233/.keep" diff --git "a/\345\205\263\346\235\276\346\266\233/.keep" "b/\345\205\263\346\235\276\346\266\233/.keep" deleted file mode 100644 index e69de29..0000000 -- Gitee