Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么toString()是一个不';你不需要东西吗?_Javascript_String_Object - Fatal编程技术网

Javascript 为什么toString()是一个不';你不需要东西吗?

Javascript 为什么toString()是一个不';你不需要东西吗?,javascript,string,object,Javascript,String,Object,我对编程的了解越深,我认为我知道的旧概念就越让我困惑。例如,toString()方法。为什么我可以将此方法应用于非对象的变量?是因为toString()是一个内置的javascript方法,可以应用于所有数据类型吗?几乎所有东西都是javascript中的对象。您所谓的原语(字符串、数字等)都有方法: console.log(“Message.toUpperCase()); console.log(123.toString())几乎所有东西都是JavaScript中的对象。您所谓的原语(字符串

我对编程的了解越深,我认为我知道的旧概念就越让我困惑。例如,toString()方法。为什么我可以将此方法应用于非对象的变量?是因为toString()是一个内置的javascript方法,可以应用于所有数据类型吗?

几乎所有东西都是javascript中的对象。您所谓的原语(字符串、数字等)都有方法:

console.log(“Message.toUpperCase());

console.log(123.toString())几乎所有东西都是JavaScript中的对象。您所谓的原语(字符串、数字等)都有方法:

console.log(“Message.toUpperCase());

console.log(123.toString())
有多种不同类型的
toString
方法。有
Object.prototype.toString
,任何对象都将继承它。还有
Number.prototype.toString
Boolean.prototype.toString
,和
String.prototype.toString

当你这样做的时候

'foo'.toString()
实际上您正在调用
String.prototype.toString
——您没有调用
Object.prototype.toString

Object.prototype.toString=()=>“已更改”;

log('foo.toString())
有多种不同类型的
toString
方法。有
Object.prototype.toString
,任何对象都将继承它。还有
Number.prototype.toString
Boolean.prototype.toString
,和
String.prototype.toString

当你这样做的时候

'foo'.toString()
实际上您正在调用
String.prototype.toString
——您没有调用
Object.prototype.toString

Object.prototype.toString=()=>“已更改”;
log('foo.toString())您应该了解“原型继承”。在我看来,这是javascript语言中最关键的概念之一

上面的答案是正确的,但除非你花点时间研究这门学科,否则你不会理解它们的意思

希望能给你一些指导

你应该学习“原型遗传”。在我看来,这是javascript语言中最关键的概念之一

上面的答案是正确的,但除非你花点时间研究这门学科,否则你不会理解它们的意思


希望能给你一些指导

哪个
toString
方法?你是说
Object.prototype.toString
?请看下面的例子:var message=“Hello world!”;var x=message.toUpperCase()@当然性能你真的在问
String.prototype.toString
?@CertainPerformance我想是的,是哪种
toString
方法?你是说
Object.prototype.toString
?请看下面的例子:var message=“Hello world!”;var x=message.toUpperCase()@CertainPerformance你真的在问
String.prototype.toString
?@CertainPerformance我想是的,当你在原语上调用
toString
时,通常你只是调用原语特有的
toString
方法。如果您实际上一直在调用
Object.prototype.toString
,您会看到
[Object String]
。当您在原语上调用
toString
时,通常您只是调用原语特定的
toString
方法。如果您实际上一直在调用
Object.prototype.toString
,您就会看到
[objectstring]