16 JavaScript学习: 类型转换

简介: 16 JavaScript学习: 类型转换

JavaScript 类型转换

Number() 转换为数字, String() 转换为字符串, Boolean() 转换为布尔值

JavaScript 数据类型

在 JavaScript 中有 6 种不同的数据类型:

  • string
  • number
  • boolean
  • object
  • function
  • symbol

3 种对象类型:

  • Object
  • Date
  • Array

2 个不包含任何值的数据类型:

  • null
  • undefined

typeof 操作符

typeof 操作符是 JavaScript 中的一种操作符,用于确定给定变量的数据类型。它返回一个表示该变量数据类型的字符串。这个操作符的语法是 typeof operand,其中 operand 是要检查类型的操作数。

举个例子:

typeof 42; // 返回 "number"
typeof "hello"; // 返回 "string"
typeof true; // 返回 "boolean"
typeof { key: "value" }; // 返回 "object"
typeof [1, 2, 3]; // 返回 "object"(数组也是对象)
typeof undefined; // 返回 "undefined"
typeof null; // 返回 "object"(这是 JavaScript 的一个历史遗留问题)
typeof function() {}; // 返回 "function"

需要注意的是,typeof null 返回 “object” 是 JavaScript 中的一个历史遗留问题,并非一个准确的类型判断。

将数字转换为字符串

将数字转换为字符串可以使用 toString() 方法或者字符串模板。下面是示例代码:

使用 toString() 方法:

let number = 123;
let str = number.toString();
console.log(str); // 输出 "123"

使用字符串模板:

let number = 456;
let str = `${number}`;
console.log(str); // 输出 "456"

这两种方法都可以将数字转换为字符串。

将布尔值转换为字符串

将布尔值转换为字符串可以使用 toString() 方法或者字符串模板。下面是示例代码:

使用 toString() 方法:

let bool = true;
let str = bool.toString();
console.log(str); // 输出 "true"

使用字符串模板:

let bool = false;
let str = `${bool}`;
console.log(str); // 输出 "false"

这两种方法都可以将布尔值转换为字符串。

将日期转换为字符串

let date = new Date();
let str = date.toString();
console.log(str); // 输出当前日期和时间的字符串表示形式

将字符串转换为数字

在JavaScript中,可以使用parseInt()或者parseFloat()函数将字符串转换为数字。

  1. 使用parseInt()函数将字符串转换为整数:
let str = "42";
let num = parseInt(str);
console.log(num); // 输出 42
  1. 使用parseFloat()函数将字符串转换为浮点数:
let str = "3.14";
let num = parseFloat(str);
console.log(num); // 输出 3.14

另外,使用Number()函数也可以将字符串转换为数字:

let str = "123";
let num = Number(str);
console.log(num); // 输出 123

需要注意的是,如果字符串无法完全转换为有效的数字,则结果将会是NaN(Not a Number)。

一元运算符 +

一元运算符 + 用于将操作数转换为数字。如果操作数是一个字符串,一元运算符 + 将尝试将该字符串转换为数字。如果操作数是一个数字,那么一元运算符 + 不会对数字做任何改变,仍然是原来的数字。下面是一些示例:

let str = "42";
let numFromStr = +str;
console.log(numFromStr); // 输出 42,字符串 "42" 被转换成了数字 42
let num = 123;
let numFromNum = +num;
console.log(numFromNum); // 输出 123,数字 123 保持不变

请注意,一元运算符 + 可能会导致类型转换,因此在使用时要谨慎考虑。

将布尔值转换为数字

将日期转换为字符串,你可以使用 JavaScript 中的 Date 对象的 toString() 方法。这会返回当前日期和时间的字符串表示形式,包括星期几、月份、日期、时间和时区。以下是示例代码:

let date = new Date();
let str = date.toString();
console.log(str); // 输出当前日期和时间的字符串表示形式

要将字符串转换为数字,你可以使用 parseInt()parseFloat() 或者 Number() 函数。这些函数可以将字符串转换为对应的数字类型,其中 parseInt() 将字符串转换为整数,parseFloat() 将字符串转换为浮点数,而 Number() 则会根据字符串内容自动转换为整数或浮点数。以下是示例代码:

使用 parseInt() 函数将字符串转换为整数:

let str = "42";
let num = parseInt(str);
console.log(num); // 输出 42

使用 parseFloat() 函数将字符串转换为浮点数:

let str = "3.14";
let num = parseFloat(str);
console.log(num); // 输出 3.14

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

let str = "123";
let num = Number(str);
console.log(num); // 输出 123

要注意的是,如果字符串无法完全转换为有效的数字,则结果将会是 NaN(Not a Number)。

在 JavaScript 中,一元运算符 + 也可以用于将字符串转换为数字。它会尝试将操作数转换为数字类型,如果操作数是一个字符串,则会尝试将其转换为数字。以下是示例代码:

let str = "42";
let numFromStr = +str;
console.log(numFromStr); // 输出 42,字符串 "42" 被转换成了数字 42
let num = 123;
let numFromNum = +num;
console.log(numFromNum); // 输出 123,数字 123 保持不变

最后,要将布尔值转换为数字,可以使用一元加号运算符 +。在 JavaScript 中,true 会被转换为 1,而 false 会被转换为 0。以下是示例代码:

let bool = true;
let numFromBool = +bool;
console.log(numFromBool); // 输出 1
bool = false;
numFromBool = +bool;
console.log(numFromBool); // 输出 0

通过使用一元加号运算符,可以简单快速地将布尔值转换为对应的数字。

将日期转换为数字

在JavaScript中,你可以使用内置的Date对象来获取当前日期时间,并将其转换为包含年月日、时分秒的字符串。以下是一个示例代码:

let now = new Date();
let year = now.getFullYear();
let month = String(now.getMonth() + 1).padStart(2, '0');
let day = String(now.getDate()).padStart(2, '0');
let hour = String(now.getHours()).padStart(2, '0');
let minute = String(now.getMinutes()).padStart(2, '0');
let second = String(now.getSeconds()).padStart(2, '0');
let dateString = `${year}-${month}-${day} ${hour}:${minute}:${second}`;
console.log(dateString);

这段代码会获取当前日期时间并将其格式化为 “年-月-日 时:分:秒” 的字符串。JavaScript中的月份是从0开始计数的,所以需要注意将月份加1。

关注我,不迷路,共学习,同进步

关注我,不迷路,共学习,同进步

相关文章
|
4月前
|
前端开发 JavaScript
个人征信电子版无痕修改, 个人信用报告pdf修改,js+html+css即可实现【仅供学习用途】
本代码展示了一个信用知识学习系统的前端实现,包含评分计算、因素分析和建议生成功能。所有数据均为模拟生成
|
4月前
|
前端开发
个人征信PDF无痕修改软件,个人征信模板可编辑,个人征信报告p图神器【js+html+css仅供学习用途】
这是一款信用知识学习系统,旨在帮助用户了解征信基本概念、信用评分计算原理及信用行为影响。系统通过模拟数据生成信用报告,涵盖还款记录
|
JavaScript 前端开发 开发者
VUE 开发——Node.js学习(一)
VUE 开发——Node.js学习(一)
238 2
|
5月前
|
JavaScript 数据可视化 前端开发
three.js简单实现一个3D三角函数学习理解
1.Three.js简介 Three.js是一个基于JavaScript编写的开源3D图形库,利用WebGL技术在网页上渲染3D图形。它提供了许多高级功能,如几何体、纹理、光照、阴影等,以便开发者能够快速地创建复杂且逼真的3D场景。同时,Three.js还具有很好的跨平台和跨浏览器兼容性,让用户无需安装任何插件就可以在现代浏览器上观看3D内容。
189 0
|
10月前
|
JavaScript 前端开发 Java
JS中的隐式类型转换规则
JavaScript 是一门弱类型语言,变量类型在运行时会进行隐式转换。本文总结了常见的隐式转换规则,包括运算符转换、等号比较和布尔值转换等。例如,`1 + {a: 1}` 会先调用对象的 `toString()` 方法,最终结果为 `'1[object Object]'`。此外,还详细解析了 `undefined` 和 `null` 的运算行为,以及 `![] == []` 等特殊情况。通过这些例子,帮助开发者更好地理解 JavaScript 中的类型转换机制。
182 6
JS中的隐式类型转换规则
|
JavaScript 前端开发 安全
如何处理 JavaScript 中的类型转换错误?
【10月更文挑战第9天】处理类型转换错误需要综合运用多种方法和策略,同时要保持对潜在问题的警惕性。通过合理的错误处理,可以提高程序的健壮性,减少因类型转换错误带来的负面影响。
330 57
|
JavaScript 前端开发
JS隐式类型转换规则
【10月更文挑战第9天】 不同的 JavaScript 引擎可能在隐式类型转换的具体实现上存在一些细微差别。理解这些隐式类型转换规则对于正确处理数据和避免错误非常重要。
195 57
|
JavaScript
js学习--制作猜数字
js学习--制作猜数字
113 4
js学习--制作猜数字
|
11月前
|
Web App开发 JavaScript 前端开发
如何学习JavaScript?
如何学习JavaScript?
213 5

热门文章

最新文章