基本包装类型:
ECMAscript还提供了3个特殊的引用类型:Boolean Number String
每当读取一个这样的基本类型值的时候,后台机会创建一个基本包装类型的对象
引用类型与基本包装类型最基本的区别就是对象的生存期,使用new 操作符创建的引用类型在执行流离开当前作用域之前,都一直保存在内存中,而自动创建的基本包装类型,则存在于下一行代码的执行瞬间,然后立即被销毁。
eg:
var s1 = “some text”;
s1.color = “red”;
alert(s1.color); //undefined
var obj = new Object(“some”);
alert(obj instanceOf String); //true
6.1、String类型
6.1.1字符方法:
两个用于访问字符串中特定字符的方法:charAt()和charCodeAt(),这两个方法都接收一个参数,基于0的字符位置,前者返回字母,后者返回字母的字符编码。
6.1.2字符串操作方法:
concat用于将一个或者多个字符拼接起来,返回拼接得到的新字符串。但是大多数情况下都是使用+号操作符
三个基于子字符串创建新字符串的方法:slice() substr() substring()
这三个方法都会返回被操作字符串的子字符串,而且也都接收一到两个参数,第一个参数指定子自字符串的位置,slice()和substring()第二个参数指定子字符串结束的一个字符后面的位置,substr()第二个参数时是返回字符的个数,如果都没有第二个参数把字符串长度作为结束位置。
var stringValue = “hello world”;
alert(stringValue.slice(3)); //”lo world”
alert(stringValue.substring(3)); //”lo world”
alert(stringValue.substr(3)); //”lo world”
alert(stringValue.slice(3,7)); //”lo w”
alert(stringValue.substring(3,7)); //”lo w”
alert(stringValue.substr(3,7)); //”lo worl”
6.2、Boolean类型
var falseObject = new Boolean(false);
var result = falseObject && true; //true
布尔表达式中,所有对象都会被转成true
6.3Number类型
可以为toString()传递一个参数,告诉它返回几进制的字符串形式。
可以为toFixed()传递一个参数,告诉它返回多少个小数点的字符串形式。
用于格式化数值的方法是:toExponential,该方法返回以指数表示法表示的字符串形式,也是接受一个参数,指定输出结果中的小数位数。
eg:
var num = 10;
alert(num.toExponential(1)); //”1.0e+1”
toPrecision()会根据要处理的数值决定到底是调用toFixed还是调用toExponential()合适。