数值转换
1、 Number()可用于任何数据类型,转换规则如下:
如果是Boolean值,true和false分别转换为1,0;
如果是数值,只是简单的传入和返回;
如果是空值,返回0;
如果是undefined,返回NaN。
如果是字符串且只包含数值,则将其转换为十进制数;如果字符串中只包含十六进制格式例如“OXF”则返回对应的十进制整数值;如果字符串为空,转换为0;如果字符串包含上述以外的情况,返回NaN。
如果是对象,则调用对象的valueOf()方法,然后依照前面的规则转换返回的值,如果转换的结果是NaN,则调用对象的toString()方法,然后再依照前面的规则转换返回的字符串值。
2、parseInt()能够识别出各种整数格式。
parseInt()函数使用时可以使用基数。例如:
var num1=parseInt("10",2); //2 按二进制解析
var num1=parseInt("10",8); //8 按八进制解析
var num1=parseInt("10",10); //10 按十进制解析
var num1=parseInt("10",16); //16 按十六进制解析
对于要解析的值是十六进制的字符串,指定基数十分必要,例如:
var num1=parseInt("AF",16); //175 按十六进制解析
var num1=parseInt("AF"); //NaN
3、parseInt()可识别所有浮点数值格式,直解析十进制值,包括十进制整数格式。对于要解析的字符串,第一个小数点是有效的、第二个小数点是无效的,后面的字符串被忽略。
- String类型
由零个或者多个16位Unicode字符组成的字符序列,即字符串。字符串可由双引号(”)或者单引号( ‘)表示。
要把某个值转换为字符串,可以使用加号操作符把它与一个字符串(” “)加在一起。
- Object类型
ECMAScript中的对象其实就是一组数据和功能的集合。
对象可以通过执行new操作符后跟要创建的对象类型的名称来创建。而创建Object类型的实例并为其添加属性和方法,完全就可以创建自定义对象,如下所示:
var o=new Object();
Object的每个实例都具有下列属性和方法。
constructor:保存着用于创建当前对象的函数。
hasOwnProperty(propertyName) : 用于检查给定的 属性在当前对象实例中是否存在。其中,作为函数的属性名(propertyName) 必须以字符串形式指定。如下例:
o.hasOwnProperty("name");
isPrototypeOf(object) :用于检查传入的对象是否是另一个对象的原型。
propertyIsEnumerable(propertyName): 用于检查给定的属性能否使用for-in语句来枚举。与hasOwnProperty(propertyName) 一样,作为参数的属性名必须以字符串形式指定。
toLocalString():返回对象的字符串表示,该字符串与执行环境的地区对应。
toString():返回对象的字符串表示。
valueOf() :返回对象的字符串,数值或者布尔值表示。通常与toString()方法的返回值相同。