美文网首页
JavaScript初级篇(二)——typeof操作符,类型转换

JavaScript初级篇(二)——typeof操作符,类型转换

作者: Charon_Pluto | 来源:发表于2019-02-26 14:42 被阅读0次

一.typeof操作符

两种写法:

  • (1)typeof()
    括号 最好用法
  • (2)typeof object
    中间加一个空格

typeof 返回的数据类型

  • number
  • string
  • boolean
  • object
  • undefined
  • function

typeof 返回的值是一个string

1.number (数字)

NaN 不等于任何东西

var object=11;
typeof(object)
//结果 number
var num=123.1254
num.toFixed(3) //结果为123.125   结果保留三位有效数字,并且进行四舍五入
2.string(字符串)
var object="sss";
typeof(object)
//结果 string
3.boolean (布尔值)
var object=true;
typeof(object)
//结果 boolean 
4.object

不仅对象返回的数据类型为object
数组返回的对象也是object
null返回的也是object ,是为了给对象的占位符

var object={};
typeof(object)
//结果 object 
5.undefined
var object=undefined;
typeof(object)
//结果 undefined 
6.function
var object=function(){};
typeof(object)
//结果 function

二.显示类型转换

1.Number (转换成数字)

null :0
flase:0
true:1
但是undefined转换成NaN
字符a不能转换成NaN

var demo =Number(null);
console.warn(typeof(demo)+"  : "+demo )
//结果number :0
2.parseInt(转换成整数)

基本和Number相同,但是只能转换成整数

  • null ,boolean值,undefined 都不能转换成数字只能转换成NaN
    *a-z,A-Z能转换成整数
    *parseInt(demo,16) 后面那个代表demo的进制为16进制,转换成16进制显示结果
    *如果字符串里面包括了数字,会取到数字为止
var demo = ("10");
console.warn(typeof(demo)+"  : "+demo )
//结果number :10

var demo =parseInt("10aaaa");
console.warn(typeof(demo)+"  : "+demo )
//结果number :10
3.parseFloat(转换成浮点类型数字)

基本等同于 parseInt,除了小数点

4.String 和toString(转换成字符串)
  • toString不能undefined和null进行转换,会报错
  • toString(radix) 可以进行转换目标进制,之后成相应的字符串
var demo=10;
var string1 =demo.toString(8);
console.warn(typeof(string1 )+":"+string1)
//结果 12

eg:paseInt和toString的混合应用实例

var demo=10000;
var test = parseInt(demo,2);
console.warn(test.toString(16))
//结果 10
4.Boolean(转换成布尔值)
 Boolean()

二.隐式类型转换

1.isNaN(检验数字)

判断一个数字是否为NaN

console.log(isNaN('abc'));//true
//进行了Number转换成结果,然后结果和NaN比较
Number('abc')  NaN -->NaN 
2.++/-- +/-

++/-- +/- 都会把他的参数先进行Number()转换

var a = "abc"
a++;   //结果NaN
+a;     //结果NaN
var a ="123";
a++;    124   类型Number
3.-*/% ->Number()转换
4.&& || !

进行Boolean类型转换

5.<> >= <=

如果有一个数字,先把两边转换成数字进行比较,如果都是字符串,进行 asc码值进行比较

var a= "2">1;  //结果true
var a= 2> "3";  //结果false
5.== !=
var a=1 == "1"  //结果true
NaN ==NaN   //结果false
6.不发生类型转换的 === !==

相关文章

网友评论

      本文标题:JavaScript初级篇(二)——typeof操作符,类型转换

      本文链接:https://www.haomeiwen.com/subject/yzmeyqtx.html