1.自动转换->js会根据需要自动进行类型转换,但是转换时会遵循一定的规则。
2.强行转换->通过内置对象的方法强制转换。
转为字符串【掌握】
自动转换:
强制转换:
String(),object.toString()
转为数字类型【掌握】
自动转换:
注意:数学运算(特殊情况:+再出现字符串的情况下不是数学运算,而是字符串的拼接)。
强制转换:
1.Number() 按照自动转换规则转换
2.parseInt(string) 、parseFloat(string)
3.isNaN() 函数用于检查其参数是否是非数字值1.
注意:parseInt还可以接受第二个参数(2到36之间),表示呗解析的值的进制,返回该值对应的10进制数。parseInt的第二个参数为10,即默认是十进制转十进制
转为布尔类型【掌握】
自动转换:
强制转换:
Boolean(), !!
特殊案例:
一:在==比较的过程中,数据转换的规则,类型一样的几个特殊点:
1.{} == {} false,对象对比的是堆内存的地址
2.[] == [] false
3.NaN == NaN false
类型不一样的转换规则:
1.null == undefined true,但是换成 === 结果是false(因为类型不一致),剩下null/undefined和其他任何数据类型值都不相等
2.字符串 == 对象,要把对象转为字符串
3.剩下如果 == 两边数据类型不一致,都是需要转换为数字再进行比较
4.如果类型都是字符串,就会按照ASCII编码的进行对比
运算符
表达式:常量 1.2 'str' false 变量 x y 复合 x+1
操作符:表达式 x+1中的x,1为操作符 运算符:表达式x+1的,+为运算符
算术运算符(+,-, *,/,%【重要】,++【重要】,--)算术运算符(+,-, *,/,%【重要】,++【重要】,--)
“+”算数加和字符串想接 i++ 先赋值,再加1;++i 先加1,再赋值
注意:正号有隐式类型转换功能
比较运算符(>,=,<=,,=,!=不等于,!==不全等于)【了解】
专门用作判断,返回值结果为boolean
赋值运算符(=【掌握】,+=【掌握】,-=, *=,/=,%=)赋值运算符(=【掌握】,+=【掌握】,-=, *=,/=,%=) = 赋值运算符
表示给num+1,再把相加之后的结果赋给num这个变量 使用场合:累加求和,字符串拼接
逻辑运算符(!,&&,||)【两边均为表达式】【重要】
条件运算符【三元运算符/三目运算符】【重要】
条件表达式?结果1:结果2
如果条件表达式结果为true则返回结果1
如果条件表达式结果为false则返回结果2 案例:判断某个年份是否为闰年
运算符的优先级
下表按从最高到最低的优先级列出JavaScript运算符。具有相同优先级的运算符按从左至右的顺序求值。小括号>算术运算符>比较运算符>逻辑运算符>赋值运算符
JSON数据类型
JSON:JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式
主要作用:
JSON 是用于存储和传输数据的格式。
JSON 通常用于服务端向网页传递数据 。
特性:
json的键不能重复,如果键是一个完整的单词,可以直接写,如果键里面包含了空格,要用引号引起来
格式:数据为 键/值 对。 多个数据由逗号分隔 value可以为任意类型
定义复杂的json格式: