// 字面量 从数据的表象分辨出数据的类型
// eg: 字符串 -> "字符串" true false -> 布尔值
// 数据类型转换
------------字符串-------------
// 字符串转换,将数据转换为字符串类型
// 有三种方式
var num = 10;
// 1 toString() 语法: 变量.toString()
eg: num.toSting()
// 2 String(num) 语法:String(变量)
eg: String(num)
// 3 隐式转换 语法: 字符串+变量
// '' 是空字符串
// eg: num + ''
-------------数字-------------
// 数字转换,将数据转换为数字型
// 有4种方式
// 1 parseInt()
// 作用:将数据转换为整数型
// 语法:parseInt(变量)
// 可以将带文字的内容进行转换,会将碰见的第一个文字以后的内容切割,但是不能是文字开头的,如果是文字开头的返回NaN
var str1 = "120px"
var str2 = "px120"
eg: console.log(parseInt(str1)); // 120
eg: console.log(parseInt(str2)); // NaN
// 3 Number() : 将数据转换为Number类型
// 语法: Number(变量)
// 使用场景:针对字符串类型的数字使用
// eg:列如pormpt()接收的数据
var age = prompy("请输入你的年龄");
// age 是一个字符串
// 1 age - 0
// 2 age * 1
// 3 age / 1
-------------布尔型--------
// 第一个方法:Boolenan(变量)
// 注意:只有以下几个变量类型是false
// 0 '' NaN undefined null
// 其余类型全部为true
// 运算符
// 1 数字运算符
// + - * / %
// 2前置后置 ++ -- 运算符
// eg: var a = 10;
// 前置运算符:就是在变量前面使用 ++ 或者 --
// eg: ++a
// 运算的过程 先++ 在返回值
// 后置运算符,就是在变量后面使用 ++ 或者 --
// eg: a++
// 运算的过程,先返回值,再++
// eg: console.log(a++ + ++a);
// a++ 是10, ++a的时候,a是11,++完了是12,所以就是 10 + 12 = 22
// 3 比较运算符
// > < >= <= == === != !==
// ==是比较值
// === 是比较值的类型
// != 是比较值
// !== 是比较值或者类型
// 4 逻辑运算符
// && || !
// a:今天吃什么?
// b:除了螺蛳粉都行(非,!,只要不是螺蛳粉都行)
// a:米线和螺蛳粉你想吃声明?(或,二选一)
// b:是酸酸辣辣的酸辣粉(与,必须又酸又辣)
// 逻辑中断,与
// var flag = 表达式1 && 表达式2
// 如果表达式1返回true,则flag= 表达式2
// 如果表达式1返回false 则flag = 表达式2
// 逻辑中断, 或
// var flag = 表达式1 || 表达式2
// 如果表达式1返回true,则flag = 表达式1,并且不会执行表达式2
// 如果表达式1返回false 则flag = 表达式2
// 5 赋值运算符
// += -+ *= /= %=
// eg: var num = 10;
// num += 3;
// console.log(num); // 13
// console.log(num+= 3); //13
// 条件语句分为3种
// 1 顺序结构 2 分支结构 3 循环结构
// 条件分支语句 if else
// 语法: if (表达式) {
执行语句1
} else {
执行语句2
}
// 执行过程,如果表达式成立,就执行语句1,否则就执行语句2
// var age = prompt("how old are you?")
// if (age >= 18) {
alert("走,开黑")
} else {
alert("上号!")
}