<script type="text/javascript">
//这里变量包含一个字符串
var s1 = "some text";
//但是它有一些自己的基本类型相应的特殊行为
/*
*实际上,我们在读取一个基本类型的时候,后台就会创建一个基本包装类型的变量,从而让我们去执行这些方法
* 方法执行完毕,对象自动被销毁
*
* 后台处理的流程:
* 创建String类型的一个实例
* 在实例上调用指定的方法
* 销毁这个实例
*
* Boolean 和Number也是如此
*
* 引用类型与基本包装类型的主要区别就是对象的生存期。
* 使用new 操作符创建的引用类型的实例,在执行流离开当前作用域之前一直都保存在内存当中,没有被回收
* 而我们下面自动创建的基本包装类型的对象,则只存在于代码执行的一瞬间,然后立即被销毁
* 这就表示,我们不能为在运行时为基本类型添加方法和属性
* */
//基本包装类型
alert(s1.substring(0)); //some text
s1.color = "red";
alert(s1.color); //undefined
//引用类型
var s2 = new String("another text");
s2.color = 'blue';
alert(s2.color); //blue
</script>