当前位置: 首页 > 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.lryc.cn/news/619922.html

相关文章:

  • 多语言文本 AI 情感分析 API 数据接口
  • Python解包技巧全解析
  • Docker部署RAGFlow:生产环境开启Kibana与ES安全集成指南
  • Celery在Django中的应用
  • 【web站点安全开发】任务3:网页开发的骨架HTML与美容术CSS
  • Pytest+selenium UI自动化测试实战实例(超详细)
  • 第十三节:后期处理:效果增强
  • OpenBMC适配器模式小白学习指南
  • 服务器安全检测和防御技术
  • LeetCode算法日记 - Day 10: x 的平方根、搜索插入位置
  • 大模型微调【1】之入门
  • 农业物联网:现代农业的智慧革命
  • 后端(服务端)的跳转方式-请求转发和重定向
  • 集成电路学习:什么是CV计算机视觉
  • Nginx学习笔记(七)——Nginx负载均衡
  • 深度学习之CNN网络简介
  • 深度学习(4):数据加载器
  • go语言学习笔记
  • 初识神经网络05——构建神经网络3
  • C# 反射入门:如何获取 Type 对象?
  • 深度学习流体力学:基于PyTorch的物理信息神经网络(PINN)完整实现
  • Spring Boot项目通过Feign调用三方接口的详细教程
  • 力扣top100(day02-04)--二叉树 01
  • 阿里云Anolis OS 8.6的公有云仓库源配置步骤
  • 旧版MinIO的安装(windows)、Spring Boot 后端集成 MinIO 实现文件存储(超详细,带图文)
  • oss(阿里云)前端直传
  • 4G模块 ML307A通过MQTT协议连接到阿里云
  • ImportError: Encountered error: Failed to import NATTEN‘s CPP backend.
  • 事件处理与组件基础
  • 飞算JavaAI实现数据库交互:JPA/Hibernate + MyBatis Plus基础功能学习