String是否继承自Javascript中的Object?

Mor*_*eng 2 javascript oop string inheritance

对象的基类在Javascript中的所有对象,就像其他语言如Java和C#?

我在Firefox中使用Firebug安装了下面的代码.

var t = new Object();
var s1 = new String('str');
var s2 = 'str';
console.log(typeof t);
console.log(typeof s1);
console.log(typeof s2);
Run Code Online (Sandbox Code Playgroud)

控制台输出是

object
object
string
Run Code Online (Sandbox Code Playgroud)

那么,s1s2是不同类型的?

Kyl*_*ndo 7

是的,'str'是一个字符串literal,而不是一个字符串object.

字符串文字可以访问所有字符串的对象和方法,因为javascript会临时将字符串文字强制转换为字符串对象,以便运行所需的方法.

最后:

两者不同的是他们对新属性和方法的处理.与所有Javascript对象一样,您可以为任何String对象分配属性和方法.您无法向字符串文字添加属性或方法.他们被翻译忽略了.

在这里阅读更多内容.