js数据类型以及隐式和显式转换

130 阅读1分钟

js的数据类型其实比较少,不像Java类型区分种类很多,js的数据类型主要就是两种:基本数据类型以及引用数据类型【如:object 对象】

基本数据类型主要可分为:number(数字型),string(字符串型),Boolean(布尔型),undefined(未定义型),null(空类型)
数字类型一般会和算术运算符一起使用【‘+’、‘-’、‘*’、‘/’、‘%’】
字符串类型【使用'+'可以实现字符串的拼接】:主要是被(单引号'')双引号("") 反引号(和模板字符串一样))包裹的数据【但是不管是单引号还是双引号一定要成对使用】
模板字符串(`` 里面引用的变量,要使用 ${}包裹)

可以使用typeof x检测数据类型
    let age = 20
    let uname = 'xiaoai'
    let flag = false
    console.log(typeof age);
    console.log(typeof uname);
    console.log(typeof flag);

类型转换:【显式转换,隐式转换】

显式转化:(1)转换为数字 有三种:Number(数据)Number转化为数字类型,如果转化数据里面有非数字结果会是NaN(NaN为数字类型的数据,但不是数字)、parseint(数据)仅仅保留整数、parseFloat(数据)可以保留小数 (2)转换为字符型 String(数据型)
隐式转换:【及系统内部自动进行的转换】 +号两边只要有一个是字符串,都会把另一个转换为字符串 除了+以外的算术运算符 比如- * / 等都会把数据转化成数字类型 +号作为正号解析时,可以将字符串转换为数字类型的数据

console.log(11+11);           //22
console.log(typeof +'99');    //number
console.log(11+'11');         //1111
console.log(1 * '1');         //1
console.log('11' - 11);       //0