学习JavaScript---数据类型(2接上)
parseFloat没有基模式,例如:
var iNum1 = parseInt("1234pop");//1234.0
var iNum2 = parseInt("0xA");//NaN
var iNum3 = parseInt("22.5");//22.5
var iNum4 = parseInt(false);//NaN
var iNum5 = parseInt("hh");//NaN
var iNum6 = parseInt("22.22.5");//22.22
var iNum7 = parseInt("010");//10
3、强制类型转换
Boolean()函数:
返回true的情况:非0数字,至少有一个字符的字符串,对象
返回false的情况:空字符串,0,undefined或者null
Number()函数:
如果字符串可被进行完整的转换,那么就能将这个字符串转换
为数字。否则为NaN。但是对于一些特殊的可以进行转换。例如:
Number(false)---0;Number(true)---1;Number(null)---0;
String()函数。
三、引用类型
1、Object基类
属性:Constructor---对创建对象的函数的引用
Prototype---对该对象的对象原型的引用
方法:hasOwnProperty(property)---判断对象是否有某个特定的属性。property为字符串。
isPrototypeof(object)---判断该对象是否为另一个对象的原型
propertyIsEnumerable(property)---判断给定的属性是否可以用for...in语句进行枚举。
toString();
valueOf();
2、Boolean的引用类Boolean
var bObject = new Boolean(true);在所有Boolean表达式中所有对象都被转换为true。
如:var bObject = new Boolean(false);alert(bObject&&true)//结果是true
3、Number的引用类Number
var nObject = new Number(88); var iNumber = nObject.valueOf();
toFixed(2);取小数点两位,如nObject.toFixed(2);//结果是88.00
toExponential(1);返回科学计数法表示的数字字符串
toPrecision(1);返回最有意义的形式的字符串
4、String的引用类String
var sObject = new String("hello work");
sObject.length;
sObject.charAt(1);//结果是e
sObject.charCodeAt(1);//结果是e的字符代码101
sObject.concat("work");//结果是 hello workwork
sObject.indexOf("o");//结果是4
sObject.lastIndexOf("o");//结果是7
sObject.localeCompare("aa");//结果是1,因为hello work 排在 aa之后
sObject.localeCompare("zz");//结果是-1,因为hello work 排在 zz之前
sObject.localeCompare("hello work");//结果是0,因为hello work与hello work相等
sObject.slice(3);//结果是lo work
sObject.substring(3);//结果是lo work
sObject.slice(-3);//结果是ork,计算方法为-3+10=7,其中10为字符串的长度
sObject.substring(-3);//结果是hello work,subString将负数置为0
sObject.toLowerCase();sObject.toLocaleLowerCase();//结果为 hello work
sObject.toUpperCase();sObject.toLocaleUpperCase();//结果为 HELLO WORK
sObject instanceof String;//返回true或者false,判断的是sObject是否是String类型