JavaScript所有函数和内置方法

Number

isFiniter() 检测传入的的数值是否在无穷大和无穷小之间(有限数字或者是可转换成有限数字)返回true,否则返回false。NaN返回false。

isFinite(Number.MAX_VALUE + Number.MAX_VALUE)  //false
isFinite(NaN) //false
isFinite(10)  //true

isNaN()    参数:任何数据类型值,检测传入的参数是否等于NAN,等于返回true,否则返回NaN

isNaN(NaN)     //true
isNaN(10)      //false
isNaN("10")    //false
isNaN("blue")  //true

把非数值转换为数值的3个函数

Number()  参数:任何数据类型

  • true和false转换为1和0
  • null转换为0,
  • undefined转换NaN
  • 字符串
    • 字符串只包含数字,转换为10进制数 "123" -> 123 ,"079" -> 79(忽略前导零)
    • 字符串中包含有效浮点值,返回对应的浮点数
    • 字符串中包含有效十六进制格式,返回与之对应的10进制格式  "0xf" -> 15
    • 字符串是空串返回0
    • 其他格式返回NaN

parseInt() 参数1:字符串(必选)   参数2:转换时使用几进制(可选)    将字符串转化为整型

parseInt会忽略字符串前面的空格和前导0,直到找到第一个非空格字符,如果第一个非空格字符不是数字或负号,就会返回NaN,所以parseInt对空字符串返回NaN,如果是数字就继续解析,直到遇到非数字为止。

当解析小数时,会忽略小数点后面的。

 

var num1 = parseInt("123blue")  //123
var num2 = parseInt("")         //NaN
var num3 = parseInt(22.5)       //22
var num4 = parseInt("0xA")      //10  (十六进制数解析)
var num5 = parseInt("0x")       //NaN (十六进制数解析)

由于上面的没有指定第二个参数,就会按照16进制进行解析,

由于上面的最后一个没有指定一二个参数,就会按照16进制进行解析

var num6 = parseInt("0x",10)    //0   (十进制解析)
var num7 = parseInt("10",2)     //2   (二进制解析)
var num8 = parseInt("10",8)     //8   (八进制解析)

parseFloat() 参数:字符串   将有效的浮点格式字符串转化成浮点型

由于parseFloat没有第二个参数指定几进制,因此parseFloat只解析10进制。当传入的字符串包含可解析为整数的值(没有小数点或小数点后为0)则返回整数。

 

var num =  parseFloat("0xa")  //0
var num = parseFloat("22.34.5")  //22.34

 

String

toString()方法    数字,布尔值,对象,字符串都有toString方法,但null和undefined没有, 调用会报错。

  多数情况下不用传入参数,但当数值调用toString()方法可以传递一个参数:数值以几进制的形式输出。

var num = 10
num.toString()       // "10"
num.toString(2)     // "1010"
num.toString(8)     // "12"
num.toString(16)   // "a"

var arr = [123,true,haha]
arr.toString()         // "123,true,haha"

var obj = {}         // "[object Object]"

由于null和undefined调用toString会报错,所以当不知道转换的值是不是null或undefined时,可以使用String转型函数。

String()  转型函数 参数:任何类型值 ,将任何类型值转换成字符串。

String函数遵循下列转换规则

  • 如果有toString方法,则调用toString方法,并返回结果。
  • 如果是null,返回"null"
  • 如果是undefined,返回"undefined"

Object

Object每个实例都具有下列属性和方法

constructor : a.constructor  保存用于创建当前对象的函数

isPrototypeOf  :a.isPrototypeOf(b)判断对象a是否是对象b的原型,或者a是否在b的原型链上。

hasOwnProperty  :a.hasOwnProperty("name") 判断给定的属性是否在当前对象的实例中(而不是实例的原型中)是返回true,否则false

propertyIsEnumerable  :检测传入的属性是否可以使用for-in枚举

toString : 返回对象的字符串表示

valueOf  :返回对象的原始值

猜你喜欢

转载自www.cnblogs.com/jiaobaba/p/12305721.html