From 4c6647239d8470cdff61ae847009592f7da1d00b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E8=88=92=E6=B1=B6?= <3228916049@qq.com>
Date: Sat, 28 Oct 2023 10:31:39 +0000
Subject: [PATCH] =?UTF-8?q?10.27=E5=9F=BA=E7=A1=80=E7=BB=83=E4=B9=A0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: 李舒汶 <3228916049@qq.com>
---
...72\347\241\200\347\273\203\344\271\240.md" | 752 ++++++++++++++++++
1 file changed, 752 insertions(+)
create mode 100644 "49 \346\235\216\350\210\222\346\261\266/10.27\345\237\272\347\241\200\347\273\203\344\271\240.md"
diff --git "a/49 \346\235\216\350\210\222\346\261\266/10.27\345\237\272\347\241\200\347\273\203\344\271\240.md" "b/49 \346\235\216\350\210\222\346\261\266/10.27\345\237\272\347\241\200\347\273\203\344\271\240.md"
new file mode 100644
index 0000000..2e24069
--- /dev/null
+++ "b/49 \346\235\216\350\210\222\346\261\266/10.27\345\237\272\347\241\200\347\273\203\344\271\240.md"
@@ -0,0 +1,752 @@
+### 在 JavaScript 中有 8 种基本的数据类型(7 种原始类型和 1 种复杂类型)
+
+```js
+Number 代表数据类型是数值
+
+* 整数
+* 浮点
+* 数组
+
+String 代表字符串
+
+Boolean 布尔型
+
+* true
+* false
+
+Undefined 变量未赋值 = 变量未定义 a is not define
+
+Null 空值
+
+Object 对象
+
+function 函数
+
+BigInt(后续了解)大整数类型
+
+Symbol(后续了解)符号类型
+```
+
+### typeof操作符
+
+```js
+一个值使用 typeof 操作符会返回下列字符串之一:
+"undefined"表示值未定义;
+"boolean"表示值为布尔值;
+"string"表示值为字符串;
+"number"表示值为数值;
+"object"表示值为对象(而不是函数)或 null;
+"function"表示值为函数;
+“symbol”表示值为符号;
+
+typeof()的用法:
+你可能还会遇到另一种语法:typeof(x),它与 typeof x 相同;
+typeof是一个操作符,并非是一个函数,()只是将后续的内容当做一个整体而已;
+```
+
+### Number类型(一)
+
+```js
+number 类型代表整数和浮点数
+ var age = 18;
+var height = 1.88;
+
+
+数字number可以有很多操作,比如,乘法 *、除法 /、加法 +、减法 - 等等。
+var result1 = 10*2;
+var result2 = 10\3;
+
+
+除了常规的数字,还包括所谓的“特殊数值(“special numeric values”)”也属于Number类型(了解)
+
+
+Infinity:代表数学概念中的 无穷大 ∞,也可以表示-Infinity;
+✓ 比如 1/0 得到的就是无穷大;
+
+
+NaN:NaN 代表一个计算错误,它是一个错误的操作所得到的结果;
+✓ 比如 字符串和一个数字相乘;
+
+
+```
+
+### Number类型(二)
+
+```js
+十进制(掌握)、十六进制、二进制、八进制
+1.十进制
+var num1 =111;
+2.十六进制
+var num2 =0x111;
+3.八进制
+var num3 =0o111;
+4.二进制
+var num4 =0b111;
+console.log(num1,num2,num3,num4)
+
+
+Number 类型的最大和最小值
+console.log(number.min_value);5e-324
+console.log(number.max_value); 1.7976931348623157e+308
+
+isNaN
+判断是不是数值,不是数值为 true 是数值为 false
+
+
+```
+
+### String类型(一)
+
+```js
+JavaScript 中的字符串必须被括在引号里,有三种包含字符串的方式。
+1.双引号:"Hello"
+2.单引号:'Hello’
+3.反引号:`Hello`
+var name ="张三"
+var add ="北京"
+var des ="文字"
+
+前后的引号类型必须一致:
+1.如果在字符串里面本身包括单引号,可以使用双引号;
+2.如果在字符串里面本身包括双引号,可以使用单引号;
+var message = "我是'张三"
+```
+
+### 字符串中的转义字符
+
+```js
+转义字符串
+\ ' 单引号
+\ '' 双引号
+\t 制表,缩进
+\n 换行
+
+```
+
+### 字符串的属性和方法
+
+```js
+在 + 加号的左右两边只要出现一个字符串,这个 + 加号就不是加法运算,而是拼接字符串,而且得到一个新的字符串
+这里我们先掌握几个基本的字符串使用操作:
+操作一:字符串拼接,通过+运算符(后续还会详细讲解)
+var str1 = "H"
+var str2 ="O"
+var newStr = str1+str2 //HO
+操作二:获取字符串长度
+console.log(变量名1,length); // 返回的字符数
+
+强制转成数值,不然结果为11
+console.log(number('1')+1); // 2
+
+转换数值
+number(true); // 1
+number(false); // 0
+number(null); // 0
+number(undefined); // NaN
+number(''); // 0
+
+转换字符串
+0、null、undefined、NaN、'' 转成字符串为false,其他的为true
+```
+
+
+
+### Boarolean类型
+
+```js
+Boolean(布尔)类型用于表示真假:
+比如是否毕业. 是否有身份证. 是否购买车票. 是否成年人;
+比如开发中,我们会判断一个账号是否登录、是否是管理员、是否具备某个权限、是否拥有某个英雄、皮肤等;
+布尔(英语:Boolean)是计算机科学中的逻辑数据类型,以发明布尔代数的数学家乔治·布尔为名。
+Boolean 类型仅包含两个值:true 和 false。
+var isLogin =false;
+var flag = true;
+var result = 1 == 1;
+```
+
+### Undefined类型
+
+```js
+Undefined 类型只有一个值,就是特殊值 undefined。
+如果我们声明一个变量,但是没有对其进行初始化时,它默认就是undefined;
+var message
+console.log(message)//Undefined
+console.log(message === Undefined)// true
+
+var info;
+var info = Undefined;
+这里有两个注意事项:
+注意一:最好在变量定义的时候进行初始化,而不只是声明一个变量;
+注意二:不要显示的将一个变量赋值为undefined
+✓ 如果变量刚开始什么都没有,我们可以初始化为0、空字符串、null等值;
+
+```
+
+### Object类型
+
+```js
+Object 类型是一个特殊的类型,我们通常把它称为引用类型或者复杂类型;
+1.其他的数据类型我们通常称之为 “原始类型”,因为它们的值质保函一个单独的内容(字符串、数字或者其他);
+2.Object往往可以表示一组数据,是其他数据的一个集合;
+3.在JavaScript中我们可以使用 花括号{} 的方式来表示一个对象;
+var info = {
+ name:"why",
+ age: 18,
+ height: 1.88
+}
+
+Object是对象的意思,后续我们会专门讲解面向对象的概念等;
+```
+
+
+
+### Null类型
+
+```js
+Null 类型同样只有一个值,即特殊值 null。
+null类型通常用来表示一个对象为空,所以通常我们在给一个对象进行初始化时,会赋值为null;
+console.log(typeof null);//object
+var obj = null;
+obj = {
+ name:"why",
+ age: 18
+}
+
+null和undefined的关系:
+1.undefined通常只有在一个变量声明但是未初始化时,它的默认值是undefined才会用到;
+2.并且我们不推荐直接给一个变量赋值为undefined,所以很少主动来使用;
+3.null值非常常用,当一个变量准备保存一个对象,但是这个对象不确定时,我们可以先赋值为null;
+```
+
+
+
+### 数据类型总结
+
+```js
+JavaScript 中有八种基本的数据类型(前七种为基本数据类型,也称为原始类型,而 object 为复杂数据类型,也称为引用类
+型)。
+ 1.number 用于任何类型的数字:整数或浮点数。
+ 2.string 用于字符串:一个字符串可以包含 0 个或多个字符,所以没有单独的单字符类型。
+ 3.boolean 用于 true 和 false。
+ 4.undefined 用于未定义的值 —— 只有一个 undefined 值的独立类型。
+ 5.object 用于更复杂的数据结构。
+ 6.null 用于未知的值 —— 只有一个 null 值的独立类型。
+
+
+ 后续学习的类型:
+ symbol 用于唯一的标识符。
+ bigint 用于任意长度的整数。
+
+```
+
+
+
+### 数据类型的转换
+
+```js
+在开发中,我们可能会在不同的数据类型之间进行某些操作
+比如把一个String类型的数字和另外一个Number类型的数字进行运算;
+比如把一个String类型的文本和另外一个Number类型的数字进行相加;
+比如把一个String类型或者Number类型的内容,当做一个Boolean类型来进行判断;
+
+
+也就是在开发中,我们会经常需要对数据类型进行转换:
+大多数情况下,运算符和函数会自动将赋予它们的值转换为正确的类型,这是一种隐式转换;
+我们也可以,通过显示的方式来对数据类型进行转换;
+
+
+接下来我们来看一下数据类型之间的转换:
+String、Number、Boolean类型;
+```
+
+
+
+### 字符串String的转换
+
+```js
+其他类型经常需要转换成字符串类型,比如和字符串拼接在一起或者使用字符串中的方法。
+
+
+转换方式一:隐式转换
+一个字符串和另一个字符串进行+操作;
+✓ 如果+运算符左右两边有一个是字符串,那么另一边会自动转换成字符串类型进行拼接;
+某些函数的执行也会自动将参数转为字符串类型;
+✓ 比如console.log函数;
+
+
+转换方式二:显式转换
+调用String()函数;
+调用toString()方法;
+
+```
+
+
+
+### 数字类型Number的转换
+
+```js
+其他类型也可能会转成数字类型。
+转换方式一:隐式转换
+在算数运算中,通常会将其他类型转换成数字类型来进行运算;
+✓ 比如 "6" / "2";
+✓ 但是如果是+运算,并且其中一边有字符串,那么还是按照字符串来连接的;
+转换方式二:显式转换
+我们也可以使用Number()函数来进行显式的转换;
+其他类型转换数字的规则:
+数字类型Number的转换
+值 undefined null true 和 false string
+转换后的值 NaN 0 1 and 0 去掉首尾空格后的纯数字字符串中含有的数字。如果剩余字符串为空,则转换结
+果为 0。否则,将会从剩余字符串中“读取”数字。当类型转换出现 error 时返回 NaN。
+
+
+```
+
+
+
+### 布尔类型Boolean的转换
+
+```js
+布尔(boolean)类型转换是最简单的。
+它发生在逻辑运算中,但是也可以通过调用 Boolean(value) 显式地进行转换。
+转换规则如下:
+1.直观上为“空”的值(如 0、空字符串、null、undefined 和 NaN)将变为 false。
+2.其他值变成 trlean的转换
+1.值 0, null, undefined, NaN, ""
+转换后 false
+
+2.其他值
+转换后 true
+
+
+注意:包含 0 的字符串 "0" 是 true
+一些编程语言(比如 PHP)视 "0" 为 false。但在 JavaScript 中,非空的字符串总是 true。
+
+```
+
+
+
+### 变量的声明:在 var 关键字
+
+```js
+// 定义变量同时赋值
+var name = ' 内容';
+
+// 先定义再赋值
+var hobby;
+hobby = '内容';
+
+// 同时定义多个变量
+var a,b,c;
+a=1,b=3,c=5;
+
+// 变量之间用;逗号隔开,分号结束
+var c=1,b=2,c=3;
+
+//不能用js关键字和保留字做变量名和常量名
+```
+
+var var1=10; 基本上所有的编程语言,都不允许变量的开始有数字,前面可以用美元符合$,下划线__,字母v。
+
+
+
+Js代码在HTML内部写法,需要先写
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+