当前位置: 首页 > news >正文

18. parseInt 的参数有几个

总结

  1. parseInt 的参数有 2 个
  2. 参数 1 是字符串,参数 2 是进制数

函数签名

parseInt(string, radix);

参数说明

参数名类型必填描述
stringstring需要解析的字符串值
radixnumber数值的进制(2 到 36 之间),可选参数

⚠️ 如果不指定 radix,行为取决于字符串内容:

  • 如果字符串以 0x0X 开头,则按 16 进制解析
  • 如果字符串以 0 开头,旧版浏览器可能按 8 进制解析(ES5 之后已修正)
  • 否则按 10 进制解析

返回值

  • 返回解析后的整数值(number
  • 如果第一个字符不是数字,则返回 NaN

示例代码

基本用法

console.log(parseInt("123")); // 123(默认 10 进制)
console.log(parseInt("123", 10)); // 123
console.log(parseInt("1010", 2)); // 10(二进制)
console.log(parseInt("FF", 16)); // 255(十六进制)
console.log(parseInt("abc")); // NaN

不指定 radix 的陷阱

console.log(parseInt("012")); // 12(现代浏览器)
// 在旧环境中可能被解析为八进制:10

✅ 推荐始终指定 radix,避免解析结果不一致。

注意事项

  • 只解析字符串开头的数字部分,遇到非法字符停止解析:
console.log(parseInt("123abc")); // 123
console.log(parseInt("abc123")); // NaN
  • 如果参数不是字符串,会被自动转换为字符串:
console.log(parseInt(123.45)); // 123(等价于 parseInt("123.45"))

最佳实践

  • ✅ 始终传入 radix 参数,避免歧义
  • ✅ 使用 Number() 或一元加号(+str)将字符串转为浮点数或整数
  • ✅ 对于非字符串输入,建议先用 toString() 转换
const input = "123";
const num = +input; // 快速转为数字

http://www.xdnf.cn/news/1294021.html

相关文章:

  • 开源工具can-utils的使用
  • Docker 在 Linux 中的额外资源占用分析
  • 云计算-实战 OpenStack 私有云运维:服务部署、安全加固、性能优化、从服务部署到性能调优(含数据库、内核、组件优化)全流程
  • OpenCV常见问题汇总
  • Java JDK8环境配置
  • 基于Java的Markdown转Word工具(标题、段落、表格、Echarts图等)
  • 药房智能盘库系统:基于CV与时间序列预测的库存革命
  • 《算法导论》第 22 章 - 基本的图算法
  • Kubernetes-03:Service
  • Notepad++插件开发实战
  • Mac安装ant
  • [系统架构设计师]系统架构基础知识(一)
  • Flutter权限管理三步曲:检查、申请、处理全攻略
  • 三、非线性规划
  • 第十二节:粒子系统:海量点渲染
  • nm命令和nm -D命令参数
  • Docker部署 Neo4j 及集成 APOC 插件:安装与配置完整指南(docker-compose)
  • python的游戏评级论坛系统
  • [AI React Web] 包与依赖管理 | `axios`库 | `framer-motion`库
  • 《探索C++ set与multiset容器:深入有序唯一性集合的实现与应用》
  • 实盘回测一体的期货策略开发:tqsdk获取历史数据并回测,附python代码
  • Java 基础概念笔记
  • davici configurator 报错:License file of SIP has no valid checksum.
  • GitHub宕机时的协作方案
  • 如何使用 Ollama 在本地设置并运行 Qwen3
  • Git核心机制:工作区、暂存区与版本库
  • PyTorch Tensor完全指南:深度学习数据操作的核心艺术
  • Windows基础概略——第一阶段
  • 锂电池自动化生产线:智能制造重塑能源产业格局
  • 全球AI安全防护迈入新阶段:F5推出全新AI驱动型应用AI安全解决方案