JavaScript 和 TypeScript 中的类型转换
本文将讨论使用不同的 JavaScript 和 TypeScript 方法进行类型转换或类型转换。
在 JavaScript 中执行类型转换有两种方法:隐式和显式。
如果 JavaScript 将给定的数据类型识别为错误的,它会自动将其重新转换为正确的类型。这个过程称为隐式转换。
JavaScript 可以通过以下方式进行隐式类型转换。
如果 +
与数字字符串一起使用,则 JavaScript 通过将数字字符串值与代码的剩余值连接来返回输出。
例子:
let value;
value = '1' + 2;
console.log(value) // Output "12"
value = '1' + true;
console.log(value) // Output "1true"
如果剩余的值是数字,JavaScript 会自动将其转换为字符串。
如果数学运算符 -
、*
、/
跟在数字字符串后面,则输出也将是数字。
例子:
let value;
value = '2' - '1';
console.log(value); // Output 1
value = '2' - 1;
console.log(value); // Output 1
value = '2' * 1;
console.log(value); // Output 2
value = '2' / 1;
console.log(value); // Output 2
如果非数字字符串后跟数学运算符 -
、*
、/
,则输出将返回为 NaN
(非数字)。
例子:
let value;
value = 'hello' - 'world';
console.log(value); // Output NaN
value = 'Hello' - '2';
console.log(value); // Output NaN
由于 JavaScript 将 false
视为 0,并将所有非零数字视为 true
,因此当需要将 true
更改为数字时,true
将是 1。
例子:
let value;
value = 2 + true;
console.log(value); // Output 3
value = 2 + false;
console.log(value); // Output 2
如果 null
与数字一起使用,它将为 0。
例子:
let value;
value = 2 + null;
console.log(value); // Output 2
value = 2 - null;
console.log(value); // Output 4
当 undefined
与数字、布尔值或 null
一起使用时,输出将返回为 NaN
。
例子:
let value;
value = 2 + undefined;
console.log(value); // Output NaN
value = true + undefined;
console.log(value); // Output NaN
value = null + undefined;
console.log(value); // Output NaN
在 JavaScript 中,我们可以手动将特定数据类型转换为首选数据类型。这个过程称为显式转换,通过调用一些内置方法来完成。
使用 JavaScript 中的 Number()
方法,可以将数字字符串、布尔值 True
和 False
、null
转换为数字类型。true
将被视为 1,而 false
和 null
也将被视为 0。
示例 1:
let value;
value = Number('20');
console.log(value); // Output 20
value = Number(false);
console.log(value); // Output 0
示例 2:
let value;
value = Number(null);
console.log(value); // Output 0
let value = Number(' ')
console.log(value); // Output 0
如果在 Number()
方法中使用了无效字符串,则输出将返回为 NaN
。
此外,还有其他方法,如 parseInt()
和 parseFloat()
,其中字符串被解析并分别作为整数和浮点返回。此外,一元+ 运算符
是另一种转换数字的方法。
String()
和 toString()
可以在 JavaScript 中将数据类型转换为字符串。
例子:
let value;
value = String(1 + 2);
console.log(value); // Output "3"
value = String(null);
console.log(value); // Output "null"
value = (20).toString();
console.log(value); // Output "20"
重要的是要注意 String()
将 null
和 undefined
转换为字符串,但 toString()
会出错。
JavaScript 将所有 undefined
、null
、0
、NaN
、''
视为 false
,而所有其他值都视为 true
。
例子:
let value;
value = Boolean('');
console.log(value); // Output false
value = Boolean(undefined);
console.log(value); // Output false
value = Boolean(null);
console.log(value); // Output false
value = Boolean(NaN);
console.log(value); // Output false
当使用 as
关键字时,它通知编译器将实体视为另一种类型,而不是编译器认为的类型。因此,as
关键字在 TypeScript 中执行类型断言。
语法:
let a: typeA;
let b = a as typeB;
此外,我们还可以使用运算符 <>
在 TypeScript 中进行类型转换。
语法:
let a: typeA;
let b = <typeB>a;
相关文章
在 TypeScript 中使用 try..catch..finally 处理异常
发布时间:2023/03/19 浏览次数:181 分类:TypeScript
-
本文详细介绍了如何在 TypeScript 中使用 try..catch..finally 进行异常处理,并附有示例。
在 TypeScript 中使用 declare 关键字
发布时间:2023/03/19 浏览次数:97 分类:TypeScript
-
本教程指南通过特定的实现和编码示例深入了解了 TypeScript 中 declare 关键字的用途。
在 TypeScript 中 get 和 set
发布时间:2023/03/19 浏览次数:172 分类:TypeScript
-
本篇文章演示了类的 get 和 set 属性以及如何在 TypeScript 中实现它。
在 TypeScript 中格式化日期和时间
发布时间:2023/03/19 浏览次数:161 分类:TypeScript
-
本教程介绍内置对象 Date() 并讨论在 Typescript 中获取、设置和格式化日期和时间的各种方法。
在 TypeScript 中返回一个 Promise
发布时间:2023/03/19 浏览次数:182 分类:TypeScript
-
本教程讨论如何在 TypeScript 中返回正确的 Promise。这将提供 TypeScript 中 Returns Promise 的完整编码示例,并完整演示每个步骤。
在 TypeScript 中定义函数回调的类型
发布时间:2023/03/19 浏览次数:221 分类:TypeScript
-
本教程说明了在 TypeScript 中为函数回调定义类型的解决方案。为了程序员的方便和方便,实施了不同的编码实践指南。
在 TypeScript 中把 JSON 对象转换为一个类
发布时间:2023/03/19 浏览次数:110 分类:TypeScript
-
本教程演示了如何将 JSON 对象转换为 TypeScript 中的类。
使用 NPM 将 TypeScript 更新到最新版本
发布时间:2023/03/19 浏览次数:130 分类:TypeScript
-
本教程说明了如何使用 npm 更新到最新版本的 TypeScript。这将为如何使用 npm 将 TypeScript 更新到最新版本提供完整的实际示例。
使用 jQuery 和 TypeScript
发布时间:2023/03/19 浏览次数:151 分类:TypeScript
-
本教程提供了使用 jQuery 和 TypeScript 的基本理解和概念。