doy02+思维导图
数据类型转换
其他数据类型转换
Number()
转换的内容当做一个整体来处理 如果可以转成一个合法数字 则转换成数字 如果不能转成一个合法的数字 则转换成NaN
parseInt() 转成整数
不管转换什么 都是一位一位的对待 'abc' 如果第一位不能转成合法的数字 那么就立马输出 NaN 然后停止转换 如果第一位能转成合法的数字 那么保留第一位 然后继续看第二位 以此类推直到结束 true NaN false NaN 不认小数点
parseFloat()
也是以为一位的对待 同parseInt 如果第一位不能转成合法的值 那么就立马输出 NaN 然后停止转换 如果第一位可以转换 那么保留第一位 继续下一位 识别小数点
判断第一个数是否是NaN
isNaN() 只要带is的工具 结果不出意外一定是布尔类型 // 如果是NaN 则返回true 否则返回false console.log(isNaN(parseFloat('abc123.456')));// true console.log(isNaN(parseFloat('123.456abc')));// false console.log(parseFloat('abc123.4576')+100) // NaN console.log(NaN == NaN) // 结果一定是布尔类型 要么true 要么false NaN 跟任何数字运算 结果一定是NaN NaN 不等于NaN
转字符串
String()
任何类型都可以使用这个转成字符串
toString()
不能转 undefined null [他们两个会报错]
+
除了相加 还有拼接的作用 只要两边有一个字符串 那么就是拼接 开始见到字符串 后边所有都是拼接
转布尔
Boolean()
0 0.0 NaN "" '' false null undefined【false】
复杂数据类型 引用类型中 如果是空的 结果一定是false
算术运算符
+
求和 两边都是数值 或者 布尔 拼接 只要两边有一个是字符串 那么+ 充当拼接的功能
-
*
/
%
//提取859 百位 个位 十位
var num1 = 859
h = parseInt(num1 / 100 )
t = parseInt(num1 % 100 / 10)
g = parseInt(num1 % 10)
console.log(h,t,g)
**
赋值运算符
=
赋值
-=
num=num+100 等同于 num+=100
*=
/=
%=
**=
比较运算符
==
判断值是否相等
===
判断值和类型是否相等
比较运算符 结果一定是布尔类型 console.log(undefined == null) // true undefined 派生自 null console.log(undefined === null) // false 因为类型不一致
逻辑运算符
逻辑运算符的结果 不一定是布尔类型 逻辑与 && 两边都是true 结果才是true 两边只要有一个是false 整个结果就是false
逻辑或 || 两边只要有一个是true 整个结果就是true 两边都是false 整个结果就是false
逻辑非 ! true-> false false-> true
js 不支持 连续区间判断(能被4整除 && 并且不能被100整除) 或者 || ( 能被400整除) console.log((year%4==0 && year % 100 !=0) || year % 400 ==0)
自增自减运算符
++ 每次加一
前置 ++变量 后置 变量++
-- 每次减一
var n= 5
var res = n++ + ++n + ++n + n++
// 5 + 7 +8+8
console.log(res)
console.log(n) // 9
分支结构
if(条件){ 执行语句 //满足条件进到这里 这个语句执行 } 如果if中的条件最终结果是true 才走进后边{} 否则不走进来 条件 结果 要么是真 要么假 所以不能出现 一个=
语法 if(条件){ 执行语句; // 如果if中的条件最终结果是true这个语句被执行 } else{ 执行的语句; // 如果if的条件最后的结果是false 那么这个语句被执行 }
var year = 2022;
if((year % 4==0 && year % 100 !=0) || (year %400 ==0)){
console.log('是闰年')
}
else{
console.log('不是闰年')
}
if(条件1){
执行语句; // 条件1 最终结果是true 这个语句被执行
}
else if(条件2){
执行语句; // 条件2 最终结果是true 这个语句被执行
}
else if(条件3){
执行语句; // 条件3 最终结果是true 这个语句被执行
}
else if(条件4){
执行语句; // 条件4
}