请注意区分 JavaScript 字符串对象和基本字符串值 . ( 对于 Boolean 和Numbers 也同样如此.)
基本字符串:
1. 通过字面量定义的(单引号、双引号)
2. 直接调用 String 方法(没有通过 new 生成字符串对象实例)的字符串
- JavaScript会自动将基本字符串转换为字符串对象,
- 只有将基本字符串可转化为字符串对象之后才可以使用字符串对象的方法。
- 当基本字符串需要调用一个字符串对象才有的方法或者查询值的时候(基本字符串是没有这些方法的),
- JavaScript 会自动将基本字符串转化为字符串对象并且调用相应的方法或者执行查询。
var s_prim = "foo";
var s_obj = new String(s_prim);
console.log(typeof s_prim); // Logs "string" 这里是string类型
console.log(typeof s_obj); // Logs "object" 这里是object类型