来看两种比较:
第一段
<script>
var num1=1;
var num2="2";
var num3=num1+num2;
console.log(num3);//12
console.log(typeof num3);//string
</script>
第二段
<script>
var num1=1;
var num2=2;
var num3=num1+num2;
console.log(num3)//3
console.log(type num3)//number
</script>
结论:
变量num2的数据类型是string,string这种类型在内存中是位于堆中;
但是变量num1的数据类型是number,number这种数据在内存中是位于常量池内的;
所以就数据所占内存值而言string大于number;所以console出来的一般都是大内存的常量。
本文通过两个实例探讨了JavaScript中不同类型数据相加时的行为差异。当字符串与数字进行加法操作时,数字会被转换为字符串形式并进行拼接;而两个数字相加则执行正常的数学加法运算。

被折叠的 条评论
为什么被折叠?



