本篇文章给大家带来的内容是关于javascript中的数值如何进行强制转换?(方法总结),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
javascript数据类型分为基本数据类型和引用数据类型
基本数据:Number, Boolean, Undefined, Null, String;
引用数据:Object;
当0.000...01,小数点后大于等于7位时会自动转换成科学计数法
当20000...00,当整数部分大于等于22位时会自动转换成科学计数法。
Number(x):一个参数;
参数为Number类型时:能正确输出;
console.log(Number(1)); //1 console.log(Number(1e-7)); //1e-7 console.log(Number(0b111)); //7 console.log(Number(NaN)); //NaN
参数为Boolean类型时:true->1;fasle->0;
console.log(Number(true)); //1 console.log(Number(false)); //0
参数为undefined时:其值为NaN
console.log(Number(undefined)); //NaN
参数为null时:
console.log(Number(null)); //0
参数为String类型时:
//数字字符串 console.log(Number("123")); //123 console.log(Number("-123")); //-123 console.log(Number("12.3")); //12.3 console.log(Number("1e-7")); //1e-7 console.log(Number("0xff")); //255 console.log(Number("00123")); //123 console.log(Number(" 123")); //123 console.log(Number("\t\n123")); //123
//数字+字符或全字符字符串 console.log(Number('a123')); //NaN console.log(Number("false")); //NaN console.log(Number("a123")); //NaN
//空串或者空格字符串 console.log(Number("\t\n")); //0 console.log(Number(" ")); //0 console.log(Number("")); //0
参数类型是对象时:先进行.valueOf(),如得到的时对象再进行toString(),待得到基本数据类型为止,例如{}.valueOf().toString() = "[object Object]" 最后number的结果就是NaN了
console.log(Number({})); //NaN console.log(Number([1])); //1 console.log(Number([1,2])); //NaN cosole.log(Number([])); //0
parseInt(x,y):2个参数,
流程是:先String(x)变为字符串,再将该值以y进制为基底转为十进制数,不填着为10,y的范围: [2,36]
无参数y时:
x参数为number时:值得注意??的是0.001,1e-7类型的值,会舍去小数点(e)后面的数值,返回前面的。
console.log(parseInt(123)); //123 console.log(parseInt(1e-7)); //1 console.log(parseInt(0xff)); //255 console.log(parseInt(NaN)); //NaN console.log(parseInt(0.00001)); //0
x参数为boolean,undefined,null时:
console.log(parseInt(true)); //NaN console.log(parseInt(false)); //NaN console.log(parseInt(undefined)); //NaN console.log(parseInt(null)); //NaN
x参数为String类型时:需要注意的时空串,空格字符串,数字+字符
console.log(parseInt("")); //NaN console.log(parseInt("-123")); //-123 console.log(parseInt(" ")); //NaN console.log(parseInt("\t\n")); //NaN console.log(parseInt("a123")); //NaN console.log(parseInt("123a")); //123
参数x为对象时:同理通过.valueOf(),如得到的时对象再进行toString(),待得到基本数据类型为止,然后按上述规则进行输出
console.log(parseInt({1:2})); //"[object Object]"->NaN console.log(parseInt([])); //""->NaN console.log(parseInt([1,2])); //"1,2"->//1
带参数x,y,当y为0,null,undefined,NaN时,会将y忽略默认为10,超过[2,36]的范围时返回NaN,当x值无妨被y进制表示时返回NaN,其余能表示几位就几位
console.log(parseInt("f",2)); //NaN console.log(parseInt("11f",2); //3 console.log(parseInt("123",37)); //NaN console.log(parseInt("0xff",0)); //255 console.log(parseInt("0xff",NaN)); //255 console.log(parseInt("ff",[])); //NaN
parseFloat(x):一个参数,能正确表示浮点数以及科学计数法,但是对字符串进制数不能正确表示,其余与parseInt(x,10)一样
console.log(parseFloat(0xff)); //255 console.log(parseFloat("0xff")); //0 console.log(parseInt("0xff")); //255 个人猜测parseInt(x,y)有y的存在所以能正确输出 console.log(parseFloat(1e22)); //1e22 console.log(parseFloat(1e-7)); //1e-7 console.log(parseFloat("00123")); //123 console.log(parseFloat(" ")); //NaN
String(), .toString()
第一:undefined, null没有toString()属性只能通过String(undefiend)
第二:y.toString(x), 的意思是将目标数值y转为x进制的数值
console.log(String(null)); //"null" console.log(0xff.toString(2)); //"11111111" console.log(oxff.toString()); //"255" 不填默认10进制
以上是javascript中的数值如何进行强制转换?(方法总结)的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript框架的强大之处在于简化开发、提升用户体验和应用性能。选择框架时应考虑:1.项目规模和复杂度,2.团队经验,3.生态系统和社区支持。

引言我知道你可能会觉得奇怪,JavaScript、C 和浏览器之间到底有什么关系?它们之间看似毫无关联,但实际上,它们在现代网络开发中扮演着非常重要的角色。今天我们就来深入探讨一下这三者之间的紧密联系。通过这篇文章,你将了解到JavaScript如何在浏览器中运行,C 在浏览器引擎中的作用,以及它们如何共同推动网页的渲染和交互。JavaScript与浏览器的关系我们都知道,JavaScript是前端开发的核心语言,它直接在浏览器中运行,让网页变得生动有趣。你是否曾经想过,为什么JavaScr

Node.js擅长于高效I/O,这在很大程度上要归功于流。 流媒体汇总处理数据,避免内存过载 - 大型文件,网络任务和实时应用程序的理想。将流与打字稿的类型安全结合起来创建POWE

Python和JavaScript在性能和效率方面的差异主要体现在:1)Python作为解释型语言,运行速度较慢,但开发效率高,适合快速原型开发;2)JavaScript在浏览器中受限于单线程,但在Node.js中可利用多线程和异步I/O提升性能,两者在实际项目中各有优势。

JavaScript起源于1995年,由布兰登·艾克创造,实现语言为C语言。1.C语言为JavaScript提供了高性能和系统级编程能力。2.JavaScript的内存管理和性能优化依赖于C语言。3.C语言的跨平台特性帮助JavaScript在不同操作系统上高效运行。

JavaScript在浏览器和Node.js环境中运行,依赖JavaScript引擎解析和执行代码。1)解析阶段生成抽象语法树(AST);2)编译阶段将AST转换为字节码或机器码;3)执行阶段执行编译后的代码。

Python和JavaScript的未来趋势包括:1.Python将巩固在科学计算和AI领域的地位,2.JavaScript将推动Web技术发展,3.跨平台开发将成为热门,4.性能优化将是重点。两者都将继续在各自领域扩展应用场景,并在性能上有更多突破。

Python和JavaScript在开发环境上的选择都很重要。1)Python的开发环境包括PyCharm、JupyterNotebook和Anaconda,适合数据科学和快速原型开发。2)JavaScript的开发环境包括Node.js、VSCode和Webpack,适用于前端和后端开发。根据项目需求选择合适的工具可以提高开发效率和项目成功率。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SublimeText3汉化版
中文版,非常好用

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver CS6
视觉化网页开发工具

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版