js数据类型以及相互转换。

JavaScript 数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)
引用数据类型:对象(Object)、数组(Array)、函数(Function)

查看数据类型

  • 方式一:typeof => 简单类型
      var num = 20
      var str = 'yzh'
      var b = true
      var un = undefined
      var nu = null //object
      console.log(typeof num) //number
      console.log(typeof str) //string
      console.log(typeof b) //boolean
      console.log(typeof un) //undefined
      console.log(typeof nu) //object

小技巧:在控制台可以根据颜色来判断数据的类型哦。黑色为字符串。蓝色为数字。

  • 方式二: instanceof 判断复杂类型
  • 结构 : 对象 instanceof 构造函数
      var arr = [] //数组
      var obj = {} //对象
      var fn = function() {} //函数表达式  (函数也是一个对象)
      console.log(arr instanceof Array) //true
      console.log(obj instanceof Object) //true
      console.log(fn instanceof Function) //true
      var arr = [] //数组
      var obj = {} //对象
      var fn = function() {} //函数表达式  (函数也是一个对象)
      console.log(arr.constructor.name) //Array
      console.log(obj.constructor.name) //Object
      console.log(fn.constructor.name) //Function

类型转换

一、转换成 数值类型 - number
  • 1 Number()
	  console.log(Number('55'));
	  Number()可以把任意值转换成数值类型,但是如果字符串中有不是数字的字符,返回NaN
  • 2 parseInt()parseFloat()
    • parseInt() 把整数或者小数都转化为整数;
    • parseFloat() 把整数转化整数,把小数转化为小数
	  var num1 = parseInt("12");  // 12
	  var num1 = parseInt("12.3"); //12
	  var num1 = parseFloat("12"); //12
	  var num1 = parseFloat("12.3");//12.3
	  var width = '100px';
	  parseInt(width) => 100
  • 3 算术运算 (最常用)
	  var str = '500' 
	  console.log(+str) // 500 取正
	  console.log(-str)	// -500 取负
	  //隐式转换
	  var str = "123"
	  var num = str - 0
	  console.log(num) //结果为数值型;
二、转换成 字符串类型 - string
  • 1 String()
	  var num = 5
	  num = String(num)
	  console.log(num)
  • 2 toString()
	  var num = 5
	  console.log(num.toString())// 把数值5变成字符串5
	  //将来所有的数据都会有toString()方法,除了null和undefined
  • 3 拼串,(最常用)
	  var num = 5;
	  num = num + ""
	  console.log(num)
五、转换成 布尔类型 - boolean

所有的值都可以转换成布尔类型
其中 0, "", undefinednullfalse, NaN,这几个值会转换成false,其他值都会转换成true

这个代表的五大基本类型

	  // 没有值 => false
	  // 有值 => true
	  // number string boolean undefined null 
	  //  0      ''    
	 注意 : 
   	 1. 'false' 它是字符串 
     2.  NaN  => false 
  • Boolean()
	  console.log(Boolean(1));
	  console.log(Boolean(0));
  • !!
	  var a = "abc";
	  console.log(!!a);
六、NaN

NaN: not a number, 表示一个非数字
比如:var num = parseInt(‘abc’)
在js中,NaN用来表示一个非数字的特殊值,当发现无法进行运算时,js不会报错,而是会返回一个NaN

NaN的注意事项:

  • NaN的类型是number类型的,表示一个非数字
  • NaN不等于任何值,包括NaN本身
  • js无法进行计算的时候,不会报错,就会给你返回一个NaN
  • 一般出现在转化为number中会报错

通过isNaN()可以判断是否是一个数字,返回false的时候,表示是一个数字。

	  // 判断是不是数字
	  var a = 123
	  var b = '123'
	  //  Nan 不是数字 
	  // true 不是数字
	  // false 不是不是数字 = 是数字
	  console.log(isNaN(a)) //false
	  console.log(isNaN(b)) //false

以上就是js数据类型以及相互转换啦~ (=´ω`=)~

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值