我是 Javascript 新手,对使用 parseInt() 函数将字符串转换为数字有疑问。
我通过编写以下代码来练习 parseInt,并在将用户输入从字符串更改为数字之前使用 typeof 检查控制台中的数据类型。显示结果后,我再次使用控制台日志检查数据类型,仍然是字符串。
在该语句运行期间,parseInt() 是否只转换一次,然后返回到原始状态?原始状态是指最初编写代码时的状态。在本例中,HTMLBadges 会提示用户输入字符串。
let HTMLBadges = prompt("How many HTML badges have you earned?");
let CSSBadges = prompt("How many CSS badges have you earned?");
console.log(typeof HTMLBadges + typeof CSSBadges);
totalBadges = parseInt(HTMLBadges) + parseInt(CSSBadges);
console.log(`You have a total of ${totalBadges} badges!`);
console.log(typeof HTMLBadges + typeof CSSBadges);
最佳答案
parseInt
返回一个数字
,但它不会就地改变原始变量。
尝试您的代码并将以下内容添加到其末尾:
let numberVersion = parseInt(HTMLBadges)
console.log(typeof numberVersion)
您会看到 numberVersion
中 parseInt
的结果实际上是一个数字,但同样是原始变量 HTMLBadges
在调用过程中不会发生突变。
关于Javascript parseInt() 函数只能运行一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66307099/