前端学习之路:JS的数据类型

JS 的数据类型分为两类:原始类型( Number,String,Boolean,Null,Undefined )和对象类型( 混合数据类型-Object)
1.数字(Number)
  • 整型直接量:用一个数字序列表示的一个十进制整数(js同样也能识别十六进制值)
  • 浮点型直接量: 有整数部分,小数点和小数部分组成
 3.14
 .3333
 6.02e23  // 6.02*10^23
 1.4738223E-32  // 1.4738223*10^-32
  • 非数字值(NaN)
  1. 无穷大除以无穷大(Infinity- 正无穷大),给任意负数作开方运算或者算术运算符与不是数字或无法为数字的操作数一起使用时都将返回NaN
	10 * '我是文字'  //NaN
	10 + '我是文字'  //'10我是文字' -类型转换引起的
  1. NaN不等于自身,也与任何值都不相等
    isNaN() //如果参数时NaN或者是一个非数字值,则返回true
    isFinite() //如果参数不是NaN Infinity或者-Infinity的时候返回true
  • 关于浮点数计算会产生舍入误差问题,其他有些编程语言也会出现类似情况。
var num1 = 0.1;
var num2 = 0.2;
console.log(num1 + num2); //0.30000000000000004

数值转换:

Number(): 无法转换为数字时,那么 Number() 函数返回 NaN

parseInt():将值转换为整型;

parseFloat():将值转换为浮点型。

2.字符串(String)
  • 是由单引号或者双引号括起来的字符序列
  • 字符串可以通过 length 获取长度
 var lang = "mylength"
 console.log(lang.length) //8
  • 字符串都是固定不变的,类似replace()和toUpperCase()的方法都返回新的字符串,原字符串本身不变
var lang = "mylength"
lang.replace('my','you') //"youlength" 
console.log(lang) // "mylength"

字符串转换:

String():适用于任何数据类型(null,undefined 转换后为null和undefined);

toString():null,undefined没有toString()方法。

3.布尔值(Boolean)
  • 这个类型只有两个值true和false

    布尔值转换:

    Boolean():

  undefined null 0 -0 NaN " " //这些值通过Boolean()转换都是false,其他所有值包括函数都会转成true
4.null
  • 常用来描述空值,对null执行typeof运算,结果返回字符串"object",也就是说null是一个特殊的对象值
  • 它可以表示数字,字符串和对象是"无值"的
  • 在运用中如果定义了一个变量,在后面的开发中想把这个变量当作一个对象来用,那么在定义时可将其初始化为null
  • null和undefined在双等于的时候返回值为 true
5.undefined
  • 表示变量没有初始化
 var my;
 console.log(my) // undefined
6.对象(Object )
  • 对象:

    1. js对象是一种复合值:它是属性或已命名值的集合
    2. 通过"."符号来引用属性值
    3. 当属性值是一个函数的时候,称其为方法,通过o.m()来调用
    4. 全局对象:

    windoow对象充当全局对象
    在代码的最顶级——不在任何函数内js代码,可以使用js关键字this来引用全局对象
    1. 全局属性:比如undefined,Infinity和NaN
    2. 全局函数:比如isNaN(),parseInt(),eval()
    3. 构造函数:比如Date(),String(),RegExP(),Object()和Array()
    4. 全局对象:比如Math和JSON

    5 包装对象

    • 可通过String(),Number()或Boolean()构造函数来显示创建包装函数

    • null和undefined没有包装对象

    • 在“==”,原始值和其包装对象视为相等

    • 在"==="就视为不等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值