javascript-数字toString()方法为数字和变量返回不同的值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-数字toString()方法为数字和变量返回不同的值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1200字,纯文字阅读大概需要2分钟。
内容图文
![javascript-数字toString()方法为数字和变量返回不同的值](/upload/InfoBanner/zyjiaocheng/693/98accb8a3731454e92def0c3d1ef4b69.jpg)
这个问题已经在这里有了答案: > Why does 2..toString() work? 5个
如果我跑步
var num = 23;
var n = num.toString();
console.log(n)
它按预期记录了23,但是如果我将toString()直接应用于类似这样的数字,
var n = 15.toString();
console.log(n)
它抛出一个错误:
Uncaught SyntaxError: Invalid or unexpected token.
我注意到它也适用于num变量中的十进制值(例如.3,.99、2.12、99.1)等.请问有人可以帮助我了解它们的区别以及此函数的工作原理
解决方法:
JavaScript解析按预期进行.您已声明以下内容:
23.toString()
我们将其视为Integer并在其上调用了函数.
解析器没有.解析器看到尝试声明浮点文字的尝试.解析器使用以下代码:
[(|-)] [位数] [.位数] [(E | e)[(|-)]位数]
它假定您正在声明Floating-Point Literal,因为它是:
>不是变量,因为它不是以字母或可接受的字符开头
>是数字文字,因为它以数字字符开头
>是一个浮点数,因为其中有一个小数点.
如果确实出于所有意图和目的想要调用23.toString(),则操作过程是像这样隔离文字:
(23).toString(); //interprets 23 as literal
要么
23..toString(); //interprets 23. as literal
话虽这么说,JavaScript足够灵活,足以知道您想在大多数情况下使用23作为字符串.这样编译就可以了.
var foo = "The answer is " + 42;
也是.
var bar = "39" - 0 + 3; //42
不是这样
var baz = "39" + 3; //393!!!
内容总结
以上是互联网集市为您收集整理的javascript-数字toString()方法为数字和变量返回不同的值全部内容,希望文章能够帮你解决javascript-数字toString()方法为数字和变量返回不同的值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。