目录
7.typeof 、typeof() 运算符可以查看变量的类型
一、数据类型介绍
1.数值类型 number 有整数和小数,不能用" " 、' '包裹
var num1 = 100 ; //整数
var num2 = 1.1 ; //小数
var num3 = +1;//正数
var num4 = -1 ;/负数
2.字符串 String ,需用" " 、' '包裹
var name = "zhang san" ;
var age = "12" ;
3.布尔值 Boolean 只要两个值,真为true,假为false
var ok = true ;
var nook = false ;
4.undefined 表示“未定义”,由于目标没有定义,所以没有任何的值
var sex //创建变量 ,没有赋值默认就是undefined
5.null表示空置
var c = null
6.对象数据类型,主要是各种值组成的集合
1.狭义的对象 object
2.数组 Array
3.函数类型 Function
7.typeof 、typeof() 运算符可以查看变量的类型
var num = 10 ;
console.log( typeof num );
console.log( typeof(num) );
//可以查看变量的类型赋值给result变量
var result = typeof(ok);
console.log(result)
二、数据类型之间的转换
1、 转字符串
1)数字类型 --> 字符串
(null和undefined类型没有toString()
基本语法: 属性.toString( )
<script>
//数字 --> 字符串
var num = 10 ;
var num1 = num.toString();
console.log(typeof num ,typeof num1); // number , string
</script>
<script>
//1) 数字 --> 字符串
var num = 10 ;
var num1 = num + "";
console.log(typeof num1 , num1); // string 10
//2) null --> 字符串
var nul = null ;
var nul2 = null +"";
console.log (typeof nul2 , nul2); //string null
//3) undefined --> 字符串
var und = undefined;
var und1 = undefined + "";
console.log (typeof und1 , und1); // string undefined
//4)boolean --> 字符串
var bol = true ;
var bol2 = true + " ";
console.log (typeof bol2 , bol); //string true
</script>
</body>
3)任意数据 -->字符串
基本语法:String(值)
1)数字 -->字符串 2) null -->字符串 3)undefined -->字符串 4)Boolean -->字符串
<script>
//1) 数字 --> 字符串
var num = 10 ;
var num1 = String(num);
console.log(typeof num1 , num1); // string 10
//2) null --> 字符串
var nul = null ;
var nul2 = String(nul);
console.log (typeof nul2 , nul2); //string null
//3) undefined --> 字符串
var und = undefined;
var und1 = String(und1);
console.log (typeof und1 ,und1); // string undefined
//4) boolean -->字符串
var bool = true ;
var bool2 = String(bool);
console.log (typeof bool2 ,bool2); //string true
</script>
2、转数字类型
1)任意类型 -- >数字类型 (不能转数字类型的转为NaN )
转为NaN: 2)字符串-->数字 4)undefined --> 数字
转为0 : 3) null --> 数字 5)Boolean -false --> 数字
转为1 : 5)Boolean -true --> 数字
1-- 基本语法: + " "
<script>
//1) 数字 --> 数字
var num = 10 ;
var num1 = + 10;
console.log( typeof num1 , num1); // number , 10
//2) 字符串 -->数字
var str = "A";
var str1 = + "A";
console.log( typeof str1 , str1); //string , NaN
//3) null --> 数字
var nul = null ;
var nul2 = + null;
console.log ( typeof nul2 , nul2); //number , 0
//4) undefined --> 数字
var und = undefined;
var und1 = + undefined;
console.log ( typeof und1 , und1); //number ,NaN
//5) boolean -->数字
var bool = true ;
var bool2 = + true;
console.log ( typeof bool2 , bool2); //number , 1
var bool3 = false ;
var bool4 = + false;
console.log ( typeof bool3 , bool4); //number ,0
</script>
<script>
//1) 数字 --> 数字
var num = 10 ;
var num1 = Number(10);
console.log( typeof num1 , num1); // number , 10
//2) 字符串 -->数字
var str = "A";
var str1 = Number (str);
console.log( typeof str1 , str1); //string , NaN
//3) null --> 数字
var nul = null ;
var nul2 = Number(null);
console.log ( typeof nul2 , nul2); //number , 0
//4) undefined --> 数字
var und = undefined;
var und1 = Number(undefined);
console.log ( typeof und1 , und1); //number ,NaN
//5) boolean -->数字
var bool = true ;
var bool2 = Number( true);
console.log ( typeof bool2 , bool2); //number , 1
var bool3 = false ;
var bool4 = Number (false);
console.log ( typeof bool3 , bool4); //number ,0
</script>
<script>
//1) 小数 --> 整数
var num= 10.565656 ;
var num1 = parseInt(num);
console.log( typeof num1 , num1); // number , 10
</script>
其他不能转换为数字的都是NaN
<script>
//2) 字符串 -->数字
var str = "A";
var str1 = parseInt("A");
console.log( typeof str1 , str1); //number , NaN
//3) null --> 数字
var nul = null ;
var nul2 = parseInt(null);
console.log ( typeof nul2 , nul2); //number , NaN
//4) undefined --> 数字
var und = undefined;
var und1 =parseInt(undefined);
console.log ( typeof und1 , und1); //number ,NaN
//5) boolean -->数字
var bool = true ;
var bool2 = parseInt( true);
console.log ( typeof bool2 , bool2); //number , NaN
var bool3 = false ;
var bool4 = parseInt (false);
console.log ( typeof bool3 , bool4); //number ,NaN
</script>
</body>
3)有小数的字符串 --> 保留小数的数字类型。 其他不能转换为数字的都是NaN
基本语法: parseFloat( )
<script>
//1) 小数 --> 整数
var num= 10.565656 ;
var num1 = parseFloat(num);
console.log( typeof num1 , num1); // number , 10.565656
</script>
4)*乘法, / 除法,-减法或自动转为number计算,如果不能转为number计算结果就是NaN
<script>
var a = 10;
var b = "20";
var c = "a";
console.log (a * b); //200
console.log (a * c); // NaN
</script>
parseInt 和parseFloat 应用
去掉数字后面的单位
console.log(parseInt('120px')); //--> 120
console.log(parseFloat('120px')); // --> 120
3、转boolean类型
在if条件语句里面,其他数据类型会自动转为boolean类型,同Boolean()一致。
基本语法:Boolean ( );
1) 非0的数字转为true 2) 0会转为false
<script>
//1.非0的数字 --> Boolean
var num = 10;
var num1 = Boolean(num);
console.log(num1); //true
//2.数字0 --> Boolean
var num3 = 0;
var num4 = Boolean(num3);
console.log(num4); //flase
</script>
1) 非空的字符串转为true 2) 空字符串会转为false
<script>
//1.非空字符串 --> Boolean
var str = "A" ;
var str1 = Boolean("str");
console.log(str1); //true
//2.空字符串 -->Boolean
// var str2 = "" ;
var str3 = Boolean("");
console.log(str3); //false
</script>
1)null、undefined 都转为false
<script>
//1.null --> Boolean
var nul = Boolean(null);
console.log(nul); //flase
//2.undefined -->Boolean
var und = Boolean(undefined);
console.log( und); //flase
</script>