javascript 权威指南——笔记2

时间:2022-08-27 08:18:42
  1. 布尔值转换为false:undefinednull""0NaN-0.
  2. 布尔值转换为trueInfinite,-Infinite(无穷大)、{}[]function 、非空string
  3. 原始值(null undefined boolean number string)不可更改,对象(array function)可改变
  4. == 操作符不试图将其操作数转换成布尔值,if() 判断条件需要转换成Boolean
"0"==false //=> true 都转换成数字
  1. 显示转换
Number('3')  //=>3
String(false) //=> "false" false.toString();
Boolean([]) //=> true
Object(3) //=> Number {[[PrimitiveValue]]: 3} new Number('3')
Number([])//0

另外一种方式:+x==Number('3') x-0 ,boolean转换 !!X


Number

  1. toString:表示转换的基数(二进制,8进制,16进制)
  2. parseInt:如果字符串前缀是0x0X则按16进制解析
  3. parseFloat:解析整数和浮点数
  4. toFixed: 指定小数点后的指定位数
  5. toExponential: 指数计数法
  6. toPrecision:根据指定的有效数字位数将数字转换成字符串,如果有效数字位数少于数字整数部分则会转换成指数形式。
n.toString(16)// 0x+"11"

var n =123456.789;
n.toExponential(1)//"1.2e+5"
n.toPrecision(4)//"1.235e+5"
n.toPrecision(7)//"123456.8"
n.toPrecision(9)//"123456.789"
n.toPrecision(10)//"123456.7890"

parseInt('0xFF') //255
parseFloat('0xFF')//0

4-6方法都会四舍五入或者填充0,parseIntparseFloat如果第一位非空格字符是非字符直接量将会返回NaN

parseFloat('.')//NaN
parseFloat('.1')//0.1
parseInt(.1)//0

  • new Date().valueOf() //1447055481082 特殊的返回毫秒数而非返回对象
  • -

一把辛酸泪,好好的没有保存。重写真的好累