// 数据类型:
// 基础类型:
// 1.字符型String
// 被双引号"",单引号'',``所引起来的都是字符型
/* var a1="1";
var a2='2';
var a3=`5`;//ES6
var a4="\u4e00"; *///ES6中 双引号中可以放入utf-8的编码
// 快速将数据类型转换为字符串:
/* var a=10;
a=a+"";
console.log(typeof a); */
// 2.数值型Number
var a5=3.2e+2;//科学计数法 3.2*10的二次幂 320
var a6=045;//ES6中废弃
var a7=0xFF;//16进制
// 快速将数据类型转换成数值:
/* var a="10.35";
b=b-0;
console.log(typeof b); */
// 3.布尔值Boolean
// true真/false假
// 4.Undefined 未定义型,定义了变量没有赋值
var a7;//定义了变量,没有初始值
var a8=undefined;
// 5.空型 null将对象设置为空值
var a1=null;
// 复杂类型:
// 6.对象型Obiect
/* 键值对 key:键 value:值
键只能是字符型或者symbol型(ES6)如果键不是字符型,则会自动转换为字符型
值可以是任意类型 */
var obj={a:1,b:2};
// 7.NaN数值类型的非数值
// 8.typeof操作符
// typeof格式:typeof 常量/变量
// 功能:输出当前常量或者变量的数据类型
console.log(typeof typeof undefined);
// 第一次输出的数据类型为undefined
// 第二次输出的数据类型为字符串
// 注:
// 判断null的数据类型为object
// 1.字符型转换为数值型
// 字符串只要含有非数字就会转换成NaN(数值类型的非数值),否则转换为数值--叫做强制转换
a=Number(a);//强制转换为数值型
// 非数值不等于非数值
// 转换为整数型数值,从开始向后转换遇到字符停止(如果开始是数值就可以转换)
parseInt();//将字符串转化为整型数值
a=parseInt(a);//NaN
a=parseInt("4a");//4
a=parseInt(a4);//NaN
parseInt();//将字符串按照指定的进制类型转换(第二个参数是进制类型)
a=parseInt(a,16);//164 将a转换为16进制的整型数值
// 第二个参数可以不填,默认转换为10进制,最小转换2,最大转换为36进制
// 转换为浮点数 parseFalse();
var a=4.25;
a=parseFloat(a);
console.log(a);
var a=100.00;
a=parseFloat(a);
console.log(a);//100 会省略00
// 2.布尔值转换为数值
// 强制转换为数值
var a=true;//true=1
a=Number(a);
console.log(a);//1
// 3.undefined null转换为数值
// undefined null转换为数值
// 4.转换字符串
// 强制转化为字符串String();
// 将数值按照指定进制类型转换为字符串 .toString();
// .toString();默认是转换为字符串
// .toString(2);参数是进制转换,数值将按照进制转换为字符串,2-36 如果不是2-36的整数,将会报错,小数会向下取整
// 保留小数点后几位 .toFixed(); 参数0-20 默认参数是0
// 注:四舍五入 保留一位小数点会有误差 负数时是有Bug
// 解决小数点后一位误差:先乘一百,取整保留,在除一百
// 保留数值的数量(科学技术法保留) .toPrecision();
var a=2555555;
a=a.toPrecision(2);
conslole.log(a);
// 保留几位小数(科学技术法保留) .toSexponential();
var a=0.0000005;
a=a.toExponential(2);
console.log(a);
// 本地字符串 a.toLocaleString();
// object转换为字符串 [object Object]
var a={a=1,b=2};
a=String(a);
conslole.log(a)//[object对象 Object对象类型]
// 空数组转化为字符串:空字符串
var a=[];
a=String(a);
console.log(a);//空字符串
//数组转换为字符串,直接将数组里的元素转换为字符串
// 遇到!需要将值转换为布尔值取反,若不是!优先转换为字符
var arr=[];
var b=Boolean(arr);
console.log(![]==[]);//true
// 空数组转换为字符串是空字符串,空字符串的布尔值false,false=false=》true
// 5.转换为布尔值
// 将""(空字符串),0,false,null,undefined,NaN转换成布尔值,都是false,除此之外,都是true。
// 将数字转换成布尔值:非0即真;
// 将字符串转换成布尔值:非空即真。
// 6.字符串转换为对象:转换为字符串对象
var str="abc";
var o=Object(str);
console.log(o);
// 对象转换为数值NaN
// 所有的隐式转换都是强制转换
数据类型转换
最新推荐文章于 2024-09-14 18:52:56 发布