Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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 为什么将str编号添加到自身中会将其变成一个编号?_Javascript_String_Type Conversion_Numbers - Fatal编程技术网

Javascript 为什么将str编号添加到自身中会将其变成一个编号?

Javascript 为什么将str编号添加到自身中会将其变成一个编号?,javascript,string,type-conversion,numbers,Javascript,String,Type Conversion,Numbers,MDNJS文档中没有任何内容可以解释为什么会发生以下情况 var numAsStr=2 numAsStr=+numAsStr console.logtypeOfNumstr//outputs Number这是因为如果字符串已经是整数的形式,一元数将转换字符串。希望这对您有所帮助。请参阅关于一元数加+部分的内容。您不是在向自身添加字符串编号,而是在对字符串应用+运算符并捕获强制值。如果你把它写成 var numAsString = "2" numAsString += numAsString c

MDNJS文档中没有任何内容可以解释为什么会发生以下情况

var numAsStr=2 numAsStr=+numAsStr
console.logtypeOfNumstr//outputs Number这是因为如果字符串已经是整数的形式,一元数将转换字符串。希望这对您有所帮助。

请参阅关于一元数加+部分的内容。

您不是在向自身添加字符串编号,而是在对字符串应用+运算符并捕获强制值。如果你把它写成

var numAsString = "2"
numAsString += numAsString
console.log(typeof numAsString)
numAsString = -numAsString
你会发现它并没有强制要求一个数字。如果您将其写为

var numAsString = "2"
numAsString += numAsString
console.log(typeof numAsString)
numAsString = -numAsString

它告诉您字符串中的字符类型。您可以在此处阅读更多信息:

如果将第二行更改为numasStr=+numasStr,您可以重现该问题!