diff --git a/03-JavaScript基础/01-JS简介.md b/03-JavaScript基础/01-JS简介.md
index 5eae302..6ba3ea3 100644
--- a/03-JavaScript基础/01-JS简介.md
+++ b/03-JavaScript基础/01-JS简介.md
@@ -318,7 +318,7 @@ JS代码如下:
## 我的公众号
-想学习**代码之外的软技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
+想学习**代码之外的技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
diff --git a/03-JavaScript基础/02-变量.md b/03-JavaScript基础/02-变量.md
index 5300994..a8a8e5a 100644
--- a/03-JavaScript基础/02-变量.md
+++ b/03-JavaScript基础/02-变量.md
@@ -578,7 +578,7 @@ null和undefined有最大的相似性。看看null == undefined的结果(true)
## 我的公众号
-想学习**代码之外的软技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
+想学习**代码之外的技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
diff --git a/03-JavaScript基础/03-强制类型转换.md b/03-JavaScript基础/03-变量的强制类型转换.md
similarity index 97%
rename from 03-JavaScript基础/03-强制类型转换.md
rename to 03-JavaScript基础/03-变量的强制类型转换.md
index 6131d9f..0a45416 100644
--- a/03-JavaScript基础/03-强制类型转换.md
+++ b/03-JavaScript基础/03-变量的强制类型转换.md
@@ -229,7 +229,7 @@ PS:上面的这就种情况,很重要,开发中会经常用到。
## 我的公众号
-想学习**代码之外的软技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
+想学习**代码之外的技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
diff --git a/03-JavaScript基础/04-运算符.md b/03-JavaScript基础/04-运算符.md
index 56df668..df89d93 100644
--- a/03-JavaScript基础/04-运算符.md
+++ b/03-JavaScript基础/04-运算符.md
@@ -614,7 +614,7 @@ PS:我们知道,Unicode编码采用的是16进制,但是,这里的编码
## 我的公众号
-想学习**代码之外的软技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
+想学习**代码之外的技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
diff --git a/03-JavaScript基础/05-流程控制语句:选择结构(if和switch).md b/03-JavaScript基础/05-流程控制语句:选择结构(if和switch).md
index c753d15..e820913 100644
--- a/03-JavaScript基础/05-流程控制语句:选择结构(if和switch).md
+++ b/03-JavaScript基础/05-流程控制语句:选择结构(if和switch).md
@@ -46,7 +46,7 @@ a = 2
- 循环结构:while语句、for语句
-**顺序结构**:
+## 顺序结构
按照代码的先后顺序,依次执行。结构图如下:
@@ -217,99 +217,54 @@ if语句有以下三种。
```
-## for循环
+## switch语句(条件分支语句)
-### for循环的结构
+switch语句也叫条件分支语句。
-for循环举例:
+格式:
```javascript
- for (var i = 1; i <= 100; i++) {
- console.log(i);
- }
+ switch(表达式) {
+ case 值1:
+ 语句体1;
+ break;
+
+ case 值2:
+ 语句体2;
+ break;
+
+ ...
+ ...
+
+ default:
+ 语句体 n+1;
+ break;
+ }
```
-上方代码的解释:
+备注1:当所有的比较结果都为false时,则只执行default里的语句。
-
+备注2:break可以省略,但一般不建议。否则结果可能不是你想要的,会出现一个现象:**case穿透**。
+
+**switch语句的执行流程:**
+
+- 首先,计算出表达式的值,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
+
+- 然后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。
-### for循环遍历
+### switch语句的结束条件
+
+- 情况a:遇到break就结束,而不是遇到default就结束。(因为break在此处的作用就是退出switch语句)
+
+- 情况b:执行到程序的末尾就结束。
+
+我们来举两个例子就明白了。
-```javascript
- for (var i = 1; i < 13; i = i + 4) {
- console.log(i);
- }
-```
-上方代码的遍历步骤:
-```
-程序一运行,将执行var i = 1;这条语句, 所以i的值是1。
-然后程序会验证一下i < 13是否满足,1<13是真,所以执行一次循环体(就是大括号里面的语句)。
-执行完循环体之后,会执行i=i+4这条语句,所以i的值,是5。
-
-程序会会验证一下i < 13是否满足,5<13是真,所以执行一次循环体(就是大括号里面的语句)。
-执行完循环体之后,会执行i=i+4这条语句,所以i的值,是9。
-
-程序会会验证一下i < 13是否满足,9<13是真,所以执行一次循环体(就是大括号里面的语句)。
-执行完循环体之后,会执行i=i+4这条语句,所以i的值,是13。
-
-程序会会验证一下i < 13是否满足,13<13是假,所以不执行循环体了,将退出循环。
-
-最终输出输出结果为:1、5、9
-```
-
-接下来做几个题目。
-
-题目1:
-
-```javascript
- for (var i = 1; i < 10; i = i + 3) {
- i = i + 1;
- console.log(i);
- }
-```
-
-输出结果:2、6、10
-
-题目2:
-
-```javascript
- for (var i = 1; i <= 10; i++) {
-
- }
- console.log(i);
-```
-
-输出结果:11
-
-题目3:
-
-```javascript
- for(var i = 1; i < 7; i = i + 3){
-
- }
- console.log(i);
-```
-
-输出结果:7
-
-题目4:
-
-```javascript
- for (var i = 1; i > 0; i++) {
- console.log(i);
- }
-```
-
-死循环。
-
-## switch语句
-
-当所有的比较结果都为false时,则只执行default里的语句。
## break和continue
@@ -335,107 +290,9 @@ for循环举例:
暂略。
-## 函数
-
-函数:就是将一些语句进行**封装**,然后通过**调用**的形式,执行这些语句。
-
-**函数的作用:**
-
-- 将大量重复的语句写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动。
-
-- 简化编程,让编程模块化。
-
-先来看个例子:
-
-```javascript
- console.log("你好");
- sayHello(); //调用函数
- //定义函数:
- function sayHello(){
- console.log("欢迎");
- console.log("welcome");
- }
-```
-
-### 第一步:函数的定义
-
-函数定义的语法:
-
-```javascript
- function sum(a, b){
- return a+b;
- }
-```
-
-解释如下:
-
-- function:是一个关键字。中文是“函数”、“功能”。
-
-- 函数名字:命名规定和变量的命名规定一样。只能是字母、数字、下划线、美元符号,不能以数字开头。
-
-- 参数:后面有一对小括号,里面是放参数用的。
-
-- 大括号里面,是这个函数的语句。
-
-PS:方法写完之后,我们在方法的前面输入`/**`,然后回车,会发现,注释的格式会自动补齐。
-
-
-### 第二步:函数的调用
-
-函数调用的语法:
-
-```javascript
- 函数名字();
-```
-
-### 函数的参数:形参和实参
-
-函数的参数包括形参和实参。来看下面的图就懂了:
-
-
-
-
-注意:实际参数和形式参数的个数,要相同。
-
-举例:
-
-```javascript
- sum(3,4);
- sum("3",4);
- sum("Hello","World");
-
- //函数:求和
- function sum(a, b) {
- console.log(a + b);
- }
-```
-
-控制台输出结果:
-
-```
- 7
- 34
- helloworld
-```
-
-### 函数的返回值
-
-举例:
-
-```javascript
- console.log(sum(3, 4));
-
- //函数:求和
- function sum(a, b) {
- return a + b;
- }
-```
-
-return的作用是结束方法。
-
## 我的公众号
-想学习**代码之外的软技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
+想学习**代码之外的技能**?不妨关注我的微信公众号:**千古壹号**(id:`qianguyihao`)。
扫一扫,你将发现另一个全新的世界,而这将是一场美丽的意外:
diff --git a/03-JavaScript基础/06-流程控制语句:循环结构(for和while).md b/03-JavaScript基础/06-流程控制语句:循环结构(for和while).md
index b3e0f9a..47961c0 100644
--- a/03-JavaScript基础/06-流程控制语句:循环结构(for和while).md
+++ b/03-JavaScript基础/06-流程控制语句:循环结构(for和while).md
@@ -1 +1,90 @@
-06-流程控制语句:循环结构(for和while).mds
\ No newline at end of file
+
+## for循环
+
+### for循环的结构
+
+for循环举例:
+
+```javascript
+ for (var i = 1; i <= 100; i++) {
+ console.log(i);
+ }
+```
+
+上方代码的解释:
+
+
+
+
+### for循环遍历
+
+
+```javascript
+ for (var i = 1; i < 13; i = i + 4) {
+ console.log(i);
+ }
+
+```
+
+上方代码的遍历步骤:
+
+```
+程序一运行,将执行var i = 1;这条语句, 所以i的值是1。
+然后程序会验证一下i < 13是否满足,1<13是真,所以执行一次循环体(就是大括号里面的语句)。
+执行完循环体之后,会执行i=i+4这条语句,所以i的值,是5。
+
+程序会会验证一下i < 13是否满足,5<13是真,所以执行一次循环体(就是大括号里面的语句)。
+执行完循环体之后,会执行i=i+4这条语句,所以i的值,是9。
+
+程序会会验证一下i < 13是否满足,9<13是真,所以执行一次循环体(就是大括号里面的语句)。
+执行完循环体之后,会执行i=i+4这条语句,所以i的值,是13。
+
+程序会会验证一下i < 13是否满足,13<13是假,所以不执行循环体了,将退出循环。
+
+最终输出输出结果为:1、5、9
+```
+
+接下来做几个题目。
+
+题目1:
+
+```javascript
+ for (var i = 1; i < 10; i = i + 3) {
+ i = i + 1;
+ console.log(i);
+ }
+```
+
+输出结果:2、6、10
+
+题目2:
+
+```javascript
+ for (var i = 1; i <= 10; i++) {
+
+ }
+ console.log(i);
+```
+
+输出结果:11
+
+题目3:
+
+```javascript
+ for(var i = 1; i < 7; i = i + 3){
+
+ }
+ console.log(i);
+```
+
+输出结果:7
+
+题目4:
+
+```javascript
+ for (var i = 1; i > 0; i++) {
+ console.log(i);
+ }
+```
+
+死循环。
diff --git a/03-JavaScript基础/19-对象简介.md b/03-JavaScript基础/15-对象简介.md
similarity index 100%
rename from 03-JavaScript基础/19-对象简介.md
rename to 03-JavaScript基础/15-对象简介.md
diff --git a/03-JavaScript基础/20-函数.md b/03-JavaScript基础/16-函数.md
similarity index 80%
rename from 03-JavaScript基础/20-函数.md
rename to 03-JavaScript基础/16-函数.md
index dec10d7..35a2f07 100644
--- a/03-JavaScript基础/20-函数.md
+++ b/03-JavaScript基础/16-函数.md
@@ -1,5 +1,103 @@
+## 函数
+
+函数:就是将一些语句进行**封装**,然后通过**调用**的形式,执行这些语句。
+
+**函数的作用:**
+
+- 将大量重复的语句写在函数里,以后需要这些语句的时候,可以直接调用函数,避免重复劳动。
+
+- 简化编程,让编程模块化。
+
+先来看个例子:
+
+```javascript
+ console.log("你好");
+ sayHello(); //调用函数
+ //定义函数:
+ function sayHello(){
+ console.log("欢迎");
+ console.log("welcome");
+ }
+```
+
+### 第一步:函数的定义
+
+函数定义的语法:
+
+```javascript
+ function sum(a, b){
+ return a+b;
+ }
+```
+
+解释如下:
+
+- function:是一个关键字。中文是“函数”、“功能”。
+
+- 函数名字:命名规定和变量的命名规定一样。只能是字母、数字、下划线、美元符号,不能以数字开头。
+
+- 参数:后面有一对小括号,里面是放参数用的。
+
+- 大括号里面,是这个函数的语句。
+
+PS:方法写完之后,我们在方法的前面输入`/**`,然后回车,会发现,注释的格式会自动补齐。
+
+
+### 第二步:函数的调用
+
+函数调用的语法:
+
+```javascript
+ 函数名字();
+```
+
+### 函数的参数:形参和实参
+
+函数的参数包括形参和实参。来看下面的图就懂了:
+
+
+
+
+注意:实际参数和形式参数的个数,要相同。
+
+举例:
+
+```javascript
+ sum(3,4);
+ sum("3",4);
+ sum("Hello","World");
+
+ //函数:求和
+ function sum(a, b) {
+ console.log(a + b);
+ }
+```
+
+控制台输出结果:
+
+```
+ 7
+ 34
+ helloworld
+```
+
+### 函数的返回值
+
+举例:
+
+```javascript
+ console.log(sum(3, 4));
+
+ //函数:求和
+ function sum(a, b) {
+ return a + b;
+ }
+```
+
+return的作用是结束方法。
+
## 函数 function
diff --git a/03-JavaScript基础/21-对象、作用域和this.md b/03-JavaScript基础/17-对象、作用域和this.md
similarity index 100%
rename from 03-JavaScript基础/21-对象、作用域和this.md
rename to 03-JavaScript基础/17-对象、作用域和this.md
diff --git a/03-JavaScript基础/22-对象的创建、构造函数和原型.md b/03-JavaScript基础/18-对象的创建、构造函数和原型.md
similarity index 100%
rename from 03-JavaScript基础/22-对象的创建、构造函数和原型.md
rename to 03-JavaScript基础/18-对象的创建、构造函数和原型.md
diff --git a/03-JavaScript基础/23-数组.md b/03-JavaScript基础/19-数组.md
similarity index 100%
rename from 03-JavaScript基础/23-数组.md
rename to 03-JavaScript基础/19-数组.md
diff --git a/03-JavaScript基础/24-内置对象.md b/03-JavaScript基础/20-内置对象.md
similarity index 100%
rename from 03-JavaScript基础/24-内置对象.md
rename to 03-JavaScript基础/20-内置对象.md
diff --git a/03-JavaScript基础/25-DOM操作.md b/03-JavaScript基础/21-DOM操作.md
similarity index 100%
rename from 03-JavaScript基础/25-DOM操作.md
rename to 03-JavaScript基础/21-DOM操作.md
diff --git a/03-JavaScript基础/26-事件对象Event和冒泡.md b/03-JavaScript基础/22-事件对象Event和冒泡.md
similarity index 100%
rename from 03-JavaScript基础/26-事件对象Event和冒泡.md
rename to 03-JavaScript基础/22-事件对象Event和冒泡.md
diff --git a/03-JavaScript基础/27-事件委托.md b/03-JavaScript基础/23-事件委托.md
similarity index 100%
rename from 03-JavaScript基础/27-事件委托.md
rename to 03-JavaScript基础/23-事件委托.md
diff --git a/03-JavaScript基础/28-BOM的常见内置方法和内置对象.md b/03-JavaScript基础/24-BOM的常见内置方法和内置对象.md
similarity index 100%
rename from 03-JavaScript基础/28-BOM的常见内置方法和内置对象.md
rename to 03-JavaScript基础/24-BOM的常见内置方法和内置对象.md
diff --git a/03-JavaScript基础/29-原型链.md b/03-JavaScript基础/25-原型链.md
similarity index 100%
rename from 03-JavaScript基础/29-原型链.md
rename to 03-JavaScript基础/25-原型链.md
diff --git a/03-JavaScript基础/30-常见代码解读.md b/03-JavaScript基础/26-常见代码解读.md
similarity index 100%
rename from 03-JavaScript基础/30-常见代码解读.md
rename to 03-JavaScript基础/26-常见代码解读.md