Javascript 当我使用泛型约束接口时,为什么可以编译字符串

Javascript 当我使用泛型约束接口时,为什么可以编译字符串,javascript,typescript,Javascript,Typescript,ts解析器是否有隐式操作?为什么字符串的原型方法和属性可以被继承?为了回答标题中的问题,JS中的“abc123”是一个字符串实例,它具有属性长度和大() ts解析器是否有隐式操作?为什么可以继承字符串的原型方法和属性 它们不是继承的,只是碰巧通过了您的接口。在函数内部,除了arg.length和arg.big()之外,您将无法使用任何东西。尝试在函数内部使用更多字符串函数将无法编译(如果您的设置足够严格),但在函数外部,您可以随意操作。请将代码作为文本而不是图像发布。字符串具有长度属性和,为什么


ts解析器是否有隐式操作?为什么字符串的原型方法和属性可以被继承?

为了回答标题中的问题,JS中的“abc123”是一个字符串实例,它具有属性
长度
大()


ts解析器是否有隐式操作?为什么可以继承字符串的原型方法和属性


它们不是继承的,只是碰巧通过了您的接口。在函数内部,除了
arg.length
arg.big()
之外,您将无法使用任何东西。尝试在函数内部使用更多字符串函数将无法编译(如果您的设置足够严格),但在函数外部,您可以随意操作。

请将代码作为文本而不是图像发布。字符串具有长度属性和,为什么不编译?TypeScript是结构类型化的。此外,还不清楚您认为这里继承了什么。在编译字符串的过程中是否存在隐式操作?对于接口,我理解它只能作用于对象,理解它是错误的,但是length和big是字符串原型上的方法。对于“123”,其类型为字符串,接口声明作用于对象。我知道我的理解中有一些错误,但我还没有找到一个理论来证明为什么原型上的属性和方法得到了验证?这一步是在哪里发生的?