当前位置:   article > 正文

js 各种数据类型互相转换的函数_除了parseint还有别的转换数字函数吗?

除了parseint还有别的转换数字函数吗?

js 各种数据类型互相转换的函数

JavaScript中的数据类型包括字符串、数字、布尔、数组、对象等,以下是它们之间互相转换的函数:

字符串转数字:

  • parseInt()函数:把字符串转换为整数。如果字符串以非数字字符开头,则返回NaN。
  • parseFloat()函数:把字符串转换为浮点数。如果字符串以非数字字符开头,则返回NaN。
  • Number()函数:把字符串转换为数字。如果字符串以非数字字符开头,则返回NaN。

数字转字符串:

  • toString()方法:将数字转换为字符串。
  • String()函数:将数字转换为字符串。

字符串转布尔:

  • Boolean()函数:把字符串转换为布尔值。如果字符串为空字符串或者为0,则返回false;否则返回true。

布尔转字符串:

  • toString()方法:将布尔值转换为字符串。
  • String()函数:将布尔值转换为字符串。

数组转字符串:

  • toString()方法:将数组转换为字符串,元素之间用逗号隔开。
  • join()方法:与toString()类似,但可以指定元素之间的分隔符。

字符串转数组:

  • split()方法:将字符串按照指定的分隔符分割成数组。

数字转布尔:

  • Boolean()函数:将数字转换为布尔值。如果数字为0或NaN,则返回false;否则返回true。

布尔转数字:

  • Number()函数:将布尔值转换为数字。true转换为1,false转换为0。

对象转字符串:

  • JSON.stringify()方法:将对象转换为JSON格式的字符串。

字符串转对象

  • JSON.parse()方法:将JSON格式的字符串转换为对象。

实例说明

以下是每种数据类型互相转换的函数的实例说明:

字符串转数字:
parseInt()函数:


let str = "123";
let num = parseInt(str);
console.log(num); // Output: 123

let str2 = "abc123";
let num2 = parseInt(str2);
console.log(num2); // Output: NaN


parseFloat()函数:


let str = "3.14";
let num = parseFloat(str);
console.log(num); // Output: 3.14

let str2 = "abc3.14";
let num2 = parseFloat(str2);
console.log(num2); // Output: NaN


Number()函数:


let str = "123";
let num = Number(str);
console.log(num); // Output: 123

let str2 = "abc123";
let num2 = Number(str2);
console.log(num2); // Output: NaN


数字转字符串:
toString()方法:


let num = 123;
let str = num.toString();
console.log(str); // Output: "123"
String()函数:


let num = 123;
let str = String(num);
console.log(str); // Output: "123"


字符串转布尔:
Boolean()函数:


let str = "";
let bool = Boolean(str);
console.log(bool); // Output: false

let str2 = "abc";
let bool2 = Boolean(str2);
console.log(bool2); // Output: true


布尔转字符串:
toString()方法:


let bool = true;
let str = bool.toString();
console.log(str); // Output: "true"


String()函数:


let bool = false;
let str = String(bool);
console.log(str); // Output: "false"


数组转字符串:
toString()方法:


let arr = [1, 2, 3];
let str = arr.toString();
console.log(str); // Output: "1,2,3"


join()方法:


let arr = [1, 2, 3];
let str = arr.join("-");
console.log(str); // Output: "1-2-3"


字符串转数组:
split()方法:


let str = "1,2,3";
let arr = str.split(",");
console.log(arr); // Output: [1, 2, 3]


数字转布尔:
Boolean()函数:


let num = 0;
let bool = Boolean(num);
console.log(bool); // Output: false

let num2 = 1;
let bool2 = Boolean(num2);
console.log(bool2); // Output: true


布尔转数字:
Number()函数:


let bool = true;
let num = Number(bool);
console.log(num); // Output: 1

let bool2 = false;
let num2 = Number(bool2);
console.log(num2); // Output: 0


对象转字符串:
ON.stringify()方法:


let obj = {name: "Tom", age: 18};
let str = ON.stringify(obj);
console.log(str); // Output: "{\"name\":\"Tom\",\"age\":18}"


字符串转对象:
ON.parse()方法:


let str = "{\"name\":\"Tom\",\"age\":18

函数封装

以下是各种数据类型互相转换的函数封装在一个类中的代码示例:

  1. class DataTypeConverter {
  2. // 字符串转数字
  3. static parseToNumber(str) {
  4. return parseFloat(str);
  5. }
  6. // 数字转字符串
  7. static numberToString(num) {
  8. return num.toString();
  9. }
  10. // 字符串转布尔
  11. static stringToBoolean(str) {
  12. return Boolean(str);
  13. }
  14. // 布尔转字符串
  15. static booleanToString(bool) {
  16. return bool.toString();
  17. }
  18. // 数组转字符串
  19. static arrayToString(arr, separator) {
  20. return arr.join(separator);
  21. }
  22. // 字符串转数组
  23. static stringToArray(str, separator) {
  24. return str.split(separator);
  25. }
  26. // 数字转布尔
  27. static numberToBoolean(num) {
  28. return Boolean(num);
  29. }
  30. // 布尔转数字
  31. static booleanToNumber(bool) {
  32. return Number(bool);
  33. }
  34. // 对象转字符串
  35. static objectToString(obj) {
  36. return JSON.stringify(obj);
  37. }
  38. // 字符串转对象
  39. static stringToObject(str) {
  40. return JSON.parse(str);
  41. }
  42. }

使用示例:

  1. let str = "123";
  2. let num = DataTypeConverter.parseToNumber(str);
  3. console.log(num); // Output: 123
  4. let num2 = 123;
  5. let str2 = DataTypeConverter.numberToString(num2);
  6. console.log(str2); // Output: "123"
  7. let str3 = "true";
  8. let bool = DataTypeConverter.stringToBoolean(str3);
  9. console.log(bool); // Output: true
  10. let bool2 = false;
  11. let str4 = DataTypeConverter.booleanToString(bool2);
  12. console.log(str4); // Output: "false"
  13. let arr = [1, 2, 3];
  14. let str5 = DataTypeConverter.arrayToString(arr, "-");
  15. console.log(str5); // Output: "1-2-3"
  16. let str6 = "1,2,3";
  17. let arr2 = DataTypeConverter.stringToArray(str6, ",");
  18. console.log(arr2); // Output: [1, 2, 3]
  19. let num3 = 0;
  20. let bool3 = DataTypeConverter.numberToBoolean(num3);
  21. console.log(bool3); // Output: false
  22. let bool4 = true;
  23. let num4 = DataTypeConverter.booleanToNumber(bool4);
  24. console.log(num4); // Output: 1
  25. let obj = {name: "Tom", age: 18};
  26. let str7 = DataTypeConverter.objectToString(obj);
  27. console.log(str7); // Output: "{\"name\":\"Tom\",\"age\":18}"
  28. let str8 = "{\"name\":\"Tom\",\"age\":18}";
  29. let obj2 = DataTypeConverter.stringToObject(str8);
  30. console.log(obj2); // Output: {name: "Tom", age: 18}

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/78690
推荐阅读
相关标签
  

闽ICP备14008679号