「这是我参与2022首次更文挑战的第2天,活动详情查看:2022首次更文挑战」。
JavaScript--数据类型
基本数据类型(值类型)
- number 数字:数学中的一切数字(Infinity 无穷大)
- string 字符串:一切以引号(单引号''、双引号""、反引号`` )包起来的内容
- boolean 布尔:true 成立、false 不成立 (表示对立面)
- undefined 未定义:变量有声明,未赋值,默认值是undefined
- null 空值 :表示赋值了 没有数据
复杂数据类型(引用类型)
-
数组(Array)
1.数组的作用:一个变量储存多个数据
2.数组三要素:
元素:数组中的数据
下标:元素的位置
长度:元素的数量(最后一个元素下标=长度-1)
3.数组语法
声明数组: let 数组名 = [元素1,元素2.....]
数组取值: 数组名[下标]
1.如果下标存在,则获取对应元素值
2.如果下标不存在,则获取undefined
数组长度: 数组名.length
(数组的增删改查以及各种方法日后更新,敬请期待)
- 函数 1.函数作用 :存储代码,解决代码‘复用’问题
2.函数语法 :声明函数:把代码存到内存中(函数在声明的时候是不会执行的)
function 函数名(){
函数体
}
//调用函数:执行函数体代码
函数名()
3.函数参数: 调用者 传递数据给 函数
//传: 调用者
函数名(实参)
//收:函数
function(形参){函数体}
//函数传参本质是赋值的过程:实参给形参赋值
//1.实参给形参赋值是按照顺序一一对应的
//2.每一次传参过程都是独立的,互不影响
//3.实参和形参数量可以不一致
4.函数返回值
为什么需要返回值: 因为不同的调用者, 对函运算结果的处理方式不同 例如; 有的调用者可能要把函数运算结果发给服务器, 有的调者可能要把函数运算结果在页面展示出来。
函数返回值作用:函数 传递数据给 调用者 语法:
传:函数
function函数名(形参){ 函数体;return 返回值}
收:调用者
let 变量名(实参)
5.函数三个执行流程
1.先传参: 函数->函数(实参给形参赋值)
2.执行函数体
3.返回值: 函数->调用者
6.函数返回值注意点
函数返回值return注意点:
- 如果函数没有return,则默认返回值就是undefined
- return可以结束函数体执行,return后面的代码不会执行的
-
对象
对象介绍: 一个变量储存多个数据+阅读性高
对象与数组的异同点:
相同点:都是引用类型,都可以存储多喝数据
不同点:存储方式不同
数组:有序存储(下标从0 开始递增)
对象: 无序存储(属性名和属性值一一对应:键值对)
对象语法
声明对象
let 对象名 = {属性名1:属性值1,属性名2:属性值2.....方法名:函数}对象环境 : this关键字,谁调用这个函数,this就指向谁
(对象的增删改查以及各种方法日后更新,敬请期待)
检测数据类型
语法:typeof 数据
结果:字符串类型,告诉你这个数据是什么类型 ‘string’ 'number' 'boolean' 等等
数据类型转换
1.隐式转换
当运算符左右两边数据类型不一致的时候,编译器会自动转成一致后计算
开发中尽量不要写隐式转换,转换规则很复杂,代码不严谨,阅读性不高
转string:引号 '' 连接符+
转number :数学正号+ 、 + - * /
2.显式转换
程序员主动使用js语法来转换(推荐)
转number
字符串转整数:parseInt(数据) 解析整数,遇到非数字结束解析
字符串转小数:parseFloat(数据) 解析小数,可以识别第一个小数点,遇到飞数字结束解析
其他类型转数字:Number(数据)只要有非数字字符串,一律得到NaN
转string
常用 String(数据)可以转undefined和null
少用 变量名.toString(数据)
转布尔类型
Boolean(数据):由于布尔类型只有两个值true和false,
因此仍和数据转布尔只会得到两种情况
得到 false得到:八种数据
得到true:八种之外的任何数据
八种数据:
- undefined
- null
- “” 空字符串
- 0
- -0
- NaN
- false
- document.all
NaN: not a number
不是一个数字
NaN是number类型中的特殊值
表示数学运算是错误的,得不到数字
NaN无法与任何数据进行计算,结果一律是NaN
加油加油!!
努力学习!!