如何解决“默认” toString 方法中如何进行对象到字符串的转换?
在这种情况下,对象到字符串的转换是如何工作的?而且,更重要的是...“默认”toString
方法在这里做什么?
let a = {
valueOf: function () {
return {};
},toString: function() {
//conversion to string
}
};
console.log(String(a)); //[object Object]
据我所知,对象在 toString
方法中被转换为字符串。它不能返回一个对象,然后才在 String
操作中(我的意思是最后一行带有 console.log
),将此对象转换为字符串类型。因为在那种情况下,方法应该只返回原语,而不是对象。
至于方法 valueOf
,我想在所有这些情况下,当此方法的“默认”行为(返回对象本身)未被覆盖时,将返回对象本身。结果,这种方法几乎总是被忽略。 简单地说,我想说“默认”方法valueOf
总是返回对象。我说得对吗?
那么,我的第一个问题是:在 toString
方法中是否正确地转换为字符串类型?如果是,方法 toString
是否总是将对象转为字符串类型?
还有我的第二个问题:“默认”valueOf
方法是否总是返回对象?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。