1. 运算符优先级
优先级 | 顺序 |
1 | () |
2 | ++ -- ! |
3 | 先 * / % 后 + - |
4 | > >= < <= |
5 | == != === !== |
6 | 先&& 后 || |
7 | = |
2. 模板字符串``中输入变量
模板字符串中可换行,变量放在${}中
3. 数据转换
为什么需要转换?
使用表单,prompt 获取过来的数据默认是字符串类型,此时就不能直接进行加法运算
3.1 显式转换
手动写代码告诉系统转成什么类型(数据类型很明确,程序员主导)
类型主要转换成数字型、字符串型、布尔型
显示转换为数字型
①Number(“1”)最常用的方式
以数字开头的字符串,如果只保留数字,就可以使用 ②parseInt(数据)、③parseFloat(数据)
// var num1 = prompt("请输入第一个数");
// var num2 = prompt("请输入第二个数");
// alert(num1+num2);
console.log(typeof Number("1")) //number
console.log(Number("abc")); //NaN
console.log(Number(true)); //1
console.log(Number(false)); //0
console.log(Number(null)); //0
console.log(Number(undefined)); //NaN
console.log("-----------");
// 把以数字开头的字符串 如果只保留数字 就可以使用parseInt parseFloat
console.log(parseInt("100px"));//100
console.log(parseInt("100.5px"));//100
// parseFloat 保留小数
console.log(parseFloat("100.5px")); //100.5
/*
数据类型转换有两种:1.显式转换 2.隐式转换
显式转换:自己手动写代码告诉系统转成什么类型(数据类型很明确,程序员主导)
Number("1")
类型转换主要转换为 数字型 字符串型 布尔型
转换为数字型
Number("1")最常用的方式
parseInt(数据) parseFloat(数据) 固定使用场景
*/
显示转换为字符型
①String(数据) 返回字符串类型
②变量.toString(进制)
/*
转换为字符型
String(数据) 返回字符串类型
变量.toString(进制)
转换为布尔型
Boolean(数据)
*/
// 开发中提倡使用
console.log(typeof String(1))
console.log(String(true)) //"true"
//变量.toString()
var num = 10
console.log(typeof num.toString()) //string--
console.log(num.toString(10)) //10
console.log(num.toString(8)) //12
/*
转换为布尔类型 Boolean()
有6种情况为false : false 0 '' null undefined NaN
其余的为true
*/
console.log(Boolean(false)) //false
console.log(Boolean(0));//false
console.log(Boolean(1)) //true
console.log(Boolean(''));//false
console.log(Boolean(null)) //false
console.log(Boolean(undefined)) //false
console.log(Boolean(NaN)) //false
显示转换为布尔型
有6种情况为 false:false,0,'', null,undefined,NaN
其余的为 true
3.2 隐式转换
某些运算被执行时,系统内部自动将数据类型进行转换
/*
某些运算符被执行时,系统内部自动将数据类型进行转换, ---隐式转换
1.转换为数字型
算术运算符 - * / % 比较运算符 > ==
+ 作为正号 可以把字符串转换成数字型
2.转换为字符串型
+ 号字符串拼接
3.转换为布尔型
! 逻辑非
*/
console.log(3=='3')
console.log(8- '4');
console.log('1999'* '2');
console.log(3>'1')
console.log(+'123')
console.log(typeof +'123')
// var num1 = + prompt("请输入一个数");
// var num2 = + prompt("请输入一个数");
// alert(num1 + num2)
console.log("-----------------")
console.log('hello'+12)
console.log('' + 12); //'12'
console.log("-----------------")
console.log(!true) //false
console.log(!0) //true
console.log(!'') //true
console.log(!null) //true
console.log(!undefined);//true
console.log(!NaN) //true
console.log(!false) //true
console.log(!'hello') //false
1. 转换为数字型
算术运算符:- * / %,比较运算符:> ==
+ 作为正号 可以把字符串转换成数字型
let num = +propt('请输入一个数')
2. 转换为字符串型
+ 号字符串拼接
'hello' + 12
'' + 12
3. 转换为布尔型
! 逻辑非