JavaScript 将字符串转换为数字 – JS 字符串转 Int 示例

"John Doe" -> String
'John Doe' -> String
"12" -> String
12 -> Number

假设我们将字符串存储在一个变量中。检查变量是否为字符串的一个好方法是使用typeof运算符:

let name = "John Doe";console.log(typeof name) // "string"

现在让我们学习如何将字符串转换为数字。

如何使用Number()函数将字符串转换为数字

Number 函数是一种强大的方法,可用于将字符串或其他值转换为 Number 类型。NaN如果值无法转换,此方法也将返回:

console.log(Number('212'))  // 212
console.log(Number("2124"))  // 2124
console.log(Number('0.0314E+2')); // 3.14console.log(Number("Hello World"))  // NaN
console.log(Number(undefined))  // NaN

这也适用于变量:

let age = "12";
let password = "John12";console.log(Number(age)) // 12
console.log(Number(password)) // NaN

这是最简单的方法之一,因为它也适用于十进制值并返回值而不对其进行操作:

let answer = "12.0";
let answer = "12.0267";console.log(Number(answer)) // 12.0
console.log(Number(answer)) // 12.0267

parseInt()如何使用andparseFloat()函数将字符串转换为数字

parseInt()和函数都parseFloat()接受一个字符串作为参数,然后将该字符串转换为整数/数字。

您还可以parseInt()用于将非整数数字转换为整数,而parseFloat()它是更强大的方法,因为它可以维护浮点数和一些数学逻辑:

console.log(parseInt('12')) // 12
console.log(parseInt('12.092')) // 12.092
console.log(parseInt('  3.14  ')) // 3
console.log(parseInt('0.0314E+2')) // 0
console.log(parseInt('John Doe')) // NaNconsole.log(parseFloat('12')) // 12
console.log(parseFloat('12.092')) // 12.092
console.log(parseFloat('  3.14  ')) // 3.14
console.log(parseFloat('0.0314E+2')) // 3.14
console.log(parseFloat('John Doe')) // NaN

像往常一样,这也适用于变量:

let age = "12";console.log(parseInt(age)) // 12
console.log(parseFloat(age)) // 12

注意:parseFloat()当字符串的字符不能转换为数字时,该函数将始终返回 NaN:

console.log(parseFloat('N0.0314E+2')) // NaN

如何使用一元加号运算符 ( +)将字符串转换为数字

这是将某物转换为数字的最快和最简单的方法之一。我说“某事”是因为它转换的不仅仅是数字和浮点数的字符串表示形式——它也适用于非字符串值true,falsenull/或空字符串。

此方法的一个优点(或缺点)是它不对数字执行任何其他操作,例如向上舍入或将其转换为整数。

让我们看一些例子:

console.log(+'100'); // 100
console.log(+'100.0373'); // 100.0373
console.log(+''); // 0
console.log(+null); // 0
console.log(+true); // 1
console.log(+false); // 0
console.log(+'John Doe'); // NaN
console.log(+'0.0314E+2'); // 3.14

正如预期的那样,这也适用于变量:

let age = "74";console.log(+age); // 74

如果你比较ParseInt()加一元运算符,parseInt()在某些情况下你可能会在方法上使用加一元运算符。

例如,假设您正在获取随机值——假设一个 UUID 值在某些时候可能以数字开头,而在其他时候可以以字母开头。这意味着使用该parseInt()函数可能有时会返回NaN,有时会返回数字的第一个字符:

console.log(parseInt("cb34d-234ks-2343f-00xj")); // NaN
console.log(parseInt("997da-00xj-2343f-234ks")); // 997console.log(+"cb34d-234ks-2343f-00xj"); // NaN
console.log(+"997da-00xj-2343f-234ks"); // NaN

如何使用 JavaScript 数学方法将字符串转换为数字

将字符串转换为数字的另一种方法是使用一些 JavScript 数学方法。

您可以使用该floor()方法,它将传递的值向下舍入到最接近的整数。该ceil()方法与 相反floor(),向上舍入到最接近的整数。最后round(),介于两者之间的方法只是将数字四舍五入到最接近的整数(根据接近程度向上或向下)。

Math.floor()如何使用JavaScript 方法将字符串转换为数字

就像我上面解释的那样,这将始终返回一个整数。假设我们传递一个浮点值——它会将值向下舍入到最接近的整数。NaN如果我们将字母作为字符串或任何其他非整数字符传递,这将返回:

console.log(Math.floor("14.5")); // 14
console.log(Math.floor("654.508")); // 654
console.log(Math.floor("0.0314E+2")); // 3
console.log(Math.floor("34d-234ks")); // NaN
console.log(Math.floor("cb34d-234ks-2343f-00xj")); // NaN

Math.ceil()如何使用JavaScript 方法将字符串转换为数字

这非常相似,只会将我们的浮点值四舍五入以始终返回整数:

console.log(Math.ceil("14.5")); // 15
console.log(Math.ceil("654.508")); // 655
console.log(Math.ceil("0.0314E+2")); // 3
console.log(Math.ceil("34d-234ks")); // NaN

Math.round()如何使用JavaScript 方法将字符串转换为数字

这与这两种方法一样工作,但只是在四舍五入到最接近的整数后返回整数:

console.log(Math.round("14.5")); // 15
console.log(Math.round("654.508")); // 655
console.log(Math.round("0.0314E+2")); // 3
console.log(Math.round("34d-234ks")); // NaN

所有上述数学方法也适用于变量:

let age = "14.5";console.log(Math.floor(age)); // 14
console.log(Math.ceil(age)); // 15
console.log(Math.round(age)); // 15

如何使用一些数学运算将字符串转换为数字

这不是一个真正的方法,但值得了解。到目前为止,我们已经讨论了实现这种转换的直接方法——但在某些情况下,您可能只想执行这些数学运算来帮助转换。

这些包括乘法1、除法1和减法0。当我们对字符串执行任何这些操作时,它们将被转换为整数:

console.log("14.5" / 1); // 14.5
console.log("0.0314E+2" / 1); // 3.14console.log("14.5" * 1); // 14.5
console.log("0.0314E+2" * 1); // 3.14console.log("14.5" - 0); // 14.5
console.log("0.0314E+2" - 0); // 3.14

像往常一样,这也适用于变量:

let age = "14.5";console.log(age / 1); // 14.5
console.log(age * 1); // 14.5
console.log(age - 0); // 14.5

结论

在本文中,我们研究了在 JavaScript 中将字符串转换为整数的各种方法和方法。

最好知道存在许多方法,以便您可以选择最适合您的方法并将其应用于任何情况

JavaScript 将字符串转换为数字 – JS 字符串转 Int 示例相关推荐

  1. 【C++】String memset问题和将字符串转换为数字

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.String memset crash问题 二.将字符串转换为数字 将字符串转换为16进制数字 总结 前言 记录遇 ...

  2. 在 JavaScript 中将字符串转换为数字的 7 种方法

    1. 使用 parseInt() parseInt()解析一个字符串并返回一个整数.允许空格.仅返回第一个数字. 这种方法虽然有一个限制.如果您解析十进制数,它将四舍五入到最接近的整数值,并将该值转换 ...

  3. 在javascript中将字符串转换为数字的6种方法

    在javascript中,数字可以用两种不同的方式表示, 1.作为实际数字. 2. 作为字符串 . 很多时候,我们需要在javascript中将字符串转换为数字. 我们将看到6种不同的方法可以将字符串 ...

  4. TypeScript将字符串转换为数字

    本文翻译自:TypeScript Converting a String to a number Anyone a suggestion on how to convert a string to a ...

  5. pandas使用read_csv读取文件数据、设置converters参数将百分比字符串转换为数字

    pandas使用read_csv读取文件数据.设置converters参数将百分比字符串转换为数字 目录 pandas使用read_csv读取文件数据.设置converters参数将百分比字符串转换为 ...

  6. Swift3.0语言教程字符串转换为数字值

    Swift3.0语言教程字符串转换为数字值 Swift3.0语言教程字符串转换为数字值,在NSString中,开发者可以将字符串转换为数字值,通过这些数字值可以实现一些功能,如加法运算.减法运算等.数 ...

  7. python 如何将数字字符串转换为数字?

    将单个数字字符串转换为数字 def char2num(s):return {'0': 0, '1': 1, '2': 2, '3': 3, '4': 4, '5': 5, '6': 6, '7': 7 ...

  8. c++ascii码转换为数字_在C++中将字符串转换为数字

    有许多情况需要将数字转换为字符串或将字符串转换为数字.本文中提到了一些实现此任务的方法. 将字符串转换为数字 方法1:使用stringstream类或sscanf() 方法2:使用stoi()或ato ...

  9. Python不使用int()函数把字符串转换为数字

    Python不使用int()函数把字符串转换为数字 2018年05月21日 14:18:45 边缘ob边缘ob 阅读数:1035 https://blog.csdn.net/qq_33192555/a ...

最新文章

  1. oracle 行级死锁_ORACLE死锁的分类
  2. macbook可以装linux,怎样给老旧的 MacBook 安装 Linux
  3. C++ 动态创建对象数组
  4. Leetcode题库 15.三数之和_1(双指针 C实现)
  5. mysql考试选择题
  6. OPENCV-3 学习笔记
  7. python36怎么安装_centos 安装 python36
  8. java模式之观察者模式
  9. Java实现redis事务
  10. 安装部署shipyard
  11. UC、火绒联合发布专杀工具 清除 2345 锁首木马
  12. 数据元和元数据的概念与关系
  13. Maven最新版的下载与安装教程(详细教程)
  14. windows系统维护工具箱
  15. 《华为研发》阅读 - 16 (矩阵式管理)
  16. 信息收集之谷歌hacker
  17. html中怎样做成相册的效果,CSS相册简单实现方法(功能分析及代码)
  18. MacBook M1芯片 安装Centos8 教程(无界面安装)
  19. knex mysql 操作_mysql – 使用knex.js的我的Sql Alter表
  20. PHP家长互助的好处,家长互助会的三大促进

热门文章

  1. oracle删除表中大量数据卡顿的解决办法
  2. JS数组过滤 简单------->多条件筛选
  3. 华为手机连按3次Android版本,原来华为必须关闭这6个设置,1键按下这里即可,手机可以再用5年...
  4. 【青书学堂】计算机应用基础(高起专) 第一学期 作业
  5. Python项目实战之词云图制作
  6. Excel表格操作技巧——查找引用操作(INDEX+MATCH函数)
  7. 用手刻出计算机系统,紫砂壶电脑刻字和手工刻字,你看得出吗?
  8. 一首美国人写、唱的俄罗斯风格的歌曲
  9. Bokeh的应用之数据可视化里约奥运会体育项目
  10. (附源码)spring boot SneakerHome球鞋商城 毕业设计 011229