运算符
1.算数运算符
算数运算符 + - * / %取余,求模,取模
let num11:number=10;
let num12:number=3;
console.log(num11+num12);
console.log(num11-num12);
console.log(num11*num12);
console.log(num11/num12);
console.log(num11%num12);
console.log('-----------')
把字符串转换为整数
parseInt 把字符串转换为整数
let s1:number=parseInt(`${123/10}`)%10;
let b1:number=parseInt(`${123/100}`)%10
2. 比较运算符
> < >= <= == ===
let flag3=12>9;
let flag4=12<9;
let flag5= 12>=12;
== 不能比较不同类型
===建议使用(全等于/绝对等于)
3.三元运算
变量= 表达式1 ? 结果A:结果B
let day:number=30
let str2:string= day%2===0 ?"张三":"李四"
console.log(str2);
//大于等于18岁是成人,小于18岁未成年
let day2:number=18
let str3:string= 18>=18 ? "成年":"未成年"
console.log(str3);
4.关系运算符
关系运算符
与:&& 两个条件同时成立
非: 相反/不是
let sex1:string='女'
let isHuo:boolean=false
//女的,高的
let flag8:boolean= sex1==="女" && isHuo
console.log(flag8);
//有一个成立,就成立
//女的或者活的
sex1="男"
isHuo=true;
flag8=sex1==="女"||isHuo
console.log(flag8);
//非 相反/不是
//不是男的
sex1="女"
flag8=!(sex1==="男")
5. ++ -- += -= *= /=
i++ 先赋值,后运算(第二次用到i,i的值加1)
a1++; //每次运行都+1
i++ 先赋值,后运算(第二次用到i,i的值加1)
a1++; //每次运行都+1
console.log(a1++);
++i 先运算在赋值(直接加一)
a1=1;
++a1;
console.log(++a1);
console.log("--------------------------------");
let a2:number=10
let a3= a2++ + a2++ + ++a2 + a2++;
console.log(a3);
// += a+=3 ---> a=a1+a3
let a4:number=10;
6.移位运算
8 1000 2 10 1111
//110110 --> 1*2^5+1*2^4+0+1*2^2+1*2^2+1*2^1+0*2^0
//32+16+4+2=54
console.log(15>>>2);
//10 10000
//11 11000
let a5:number=2<<3
console.log(a5);
//2^8 直接位移
let a6:number=2<<7
console.log(a6);
console.log(Math.pow(2,8));
常用方法
获取数据的类型 typeof
let a7:string="123";
let a8:number=123;
let a9:null=null;
let a10:undefined=undefined;
// 获取数据的类型 typeof
console.log(typeof a7);
console.log(typeof a8);
null类型为 object
let a9:null=null;
let a10:undefined=undefined;
//null类型为 object
console.log(typeof a9);
console.log(typeof a10);
数字转字符串
let str5:string=a8+"";
包装 Number
let str6:string=`${a8}`
console.log(str5);
console.log(typeof a8.toString);
字符串变数字
//字符串变数字
let a12:number=Number('123')
console.log(a12);
//小数转整数
let a13:number=parseInt(`${a12}`)
//转小数
console.log(parseFloat(`123.999`));