JavaScript数据类型-number

js(学习笔记) ---- 九层之台,起于累土javascript

// Number 数字:正数 负数 小数 NaN(not a number)不是有效数字java

var num1 = 10
var num2 = -10
var num3 = -0.12

// NaN 属于数字类型 Number
// console.log(typeof NaN) // "number"

// isNaN() 检测一个值是否是NaN(非有效数字) 
// 若是是NaN(非有效数字)就返回true 是有效数字就返回false

// 返回false 说明检测的值是有效数字
// console.log(isNaN(num1)) // false
// console.log(isNaN(num2)) // false
// console.log(isNaN(num3)) // false

// console.log(isNaN(NaN)) // true
// console.log(isNaN('abc')) // true
// console.log(isNaN('10px')) // true

// 都是有效数字 isNaN会经过Number方法 先转换成数字 再进行判断
console.log(isNaN('')) // false isNaN(Number('')) => isNaN(0)

// isNaN(Number('2')) => isNaN(2) => false
console.log(isNaN('2')) // false

// isNaN(Number([])) => isNaN(0) => false
console.log(isNaN([])) // false

// isNaN(Number([100])) => isNaN(100) => false
console.log(isNaN([100])) // false

// 记住isNaN再检测值的时候 会默认调用Number先转换成数字 再进行判断


// 将其它类型转换成数字
// Number() 转换的值只要包含有 不是有效数字的字符 返回NaN
// 从左到右 依次查找数字 若是遇到一个字符不是数字 就返回NaN

// 纯数字字符串
// console.log(Number(1)) // 1
// console.log(Number('2')) // 2
// console.log(Number('-2')) // -2
// console.log(Number('0.2')) // 0.2

// console.log(Number('10px')) // NaN
// console.log(Number('px10')) // NaN

// 空字符串 转换成数字 是0
// console.log(Number('')) // 0

// 对于数组 经过Number方法 先将数组转换成字符串 再转换成数字
// 空数组 转换成数字 是0
// console.log(Number([])) // 0

// console.log(Number([100])) // 100 [100] => '100' Number('100') => 100

// 从左到右 依次查找数字 若是遇到一个字符不是数字 就返回NaN
// [100, 10] => '100, 10'
// console.log(Number([100, 10])) // NaN

// 将boolean值转换成数字
// console.log(Number(true)) // 1 true 转换成数字是 1
// console.log(Number(false)) // 0 false 转换成数字是 0
复制代码

// 对象object转换成数字是NaN
// console.log(Number({}))
// console.log(Number({1: 100}))
// var obj1 = {id: 1}
// console.log(Number(obj1))数组

// 正则转换成数字 是NaN
// console.log(Number(/\d+/)) // NaN学习

// 转换成数字(提取成数字)
// parseInt
// parseFloatui

console.log(parseInt('1')) // 1spa

console.log(Number('10px')) // NaNcode

// parseInt 从左到右依次进行提取 若是遇到字符不是数字就中止提取 将提取到数字返回对象

console.log(parseInt('10px')) // 10
console.log(parseInt('a10px')) // NaN
console.log(parseInt('11a10px')) // 11
console.log(parseInt('11111a10px')) // 11111ip

console.log(parseInt('')) // NaN
console.log(parseInt('2019')) // 2019
console.log(parseInt([])) // NaN
console.log(parseInt([100])) // [100] => '100' => 100
console.log(parseInt(true)) // NaN
console.log(parseInt(false)) // NaN字符串

// parseInt 不支持小数 利用它进行取整 不会进行四舍五入
console.log(parseInt('1.5')) // 1
console.log(parseInt('-1.5')) // -1
console.log(parseInt('0.5')) // 0

console.log(parseInt(100.50)) // 100

// parseFloat (浮点型) 识别小数点
console.log(parseFloat(100.50)) // 100.5

// 将其余类型转换成数字 重点
// Number()
// parseInt() 支持进制转换(十进制 二进制 十六进制 八进制)
// parseFloat()

// isNaN()

// Number类型 包含 有效数字 和 NaN

----------------------------------------------------------------------------------------------------------------
参考文章&&强烈推荐:布罗利

相关文章
相关标签/搜索