日期:2014-05-16  浏览次数:20316 次

Javascript 中的字符串随笔心得

1. 任何字符串的长度都可以通过 length 来取得

???????如 var text = "this is Pluto"; ?
??????????alert(text.length); ??// 输出 13

2. ECMAScript 中的字符串是不可改变的。要改变某个变量保存的字符串,首先要销毁原来的字符串,然后再用另一个包含新值的字符串填充该变量。

3. 数值转换为字符串: toString() 方法和 String() 方法。两者稍有不同。首先来看看 toString() 方法。
???????1. 几乎所有的值都有 toString() 方法(数值,布尔值,对象和字符串值),该方法返回字符串的一个副本。(这里要注意: null 和 undefined 没有这个方法)
???????2. toString() 方法可以输出以二进制,八进制,十进制,十六进制乃至其他任意进制格式表示的字符串值。
???????????如:var num = 10;?
???????????????alert(num.toString()); ??// "10", 无基数时,默认为十进制
???????????????alert(num.toString(2)); ?//?"1010"
???????????????alert(num.toString(8)); ?//?"12"
???????????????alert(num.toString(10)); //?"10"
???????????????alert(num.toString(16)); //?"a"

然后我们再来看看 String() 方法。
????????1. 在不知道要转换的值是不是 null 或 undefined 的情况下,可以使用转型函数 String(),转型函数 String() 遵循以下原则进行转换:
????????????a) 如果值有 toString() 方法,则调用此方法进行转换,默认基数为十进制。
????????????b) 如果值为 null,则返回 null
????????????c) 如果值为 undefined,则返回 undefined
????????下面举几个例子来说明以下 String() 方法:
???????????var num1 = 10;
???????????var num2 = true;
???????????var num3 = null;
???????????var num4; ?
????????
???????????alert(String(num1)); // "10"
???????????alert(String(num2)); // "true"
???????????alert(String(num3)); // "null"
???????????alert(String(num4)); // "undefined"

由于 null 和 undefined 没有 toString() 方法,所以 String() 方法就返回了这两个值得字面量。

博文系作者原创,转载请注明地址:http://firefly-zp.iteye.com

?