From 7bae4f3810dada3b8d43542799a594aef05a3b15 Mon Sep 17 00:00:00 2001 From: yihan12 <44987698+yihan12@users.noreply.github.com> Date: Thu, 14 Dec 2023 15:46:16 +0800 Subject: [PATCH] Update README.md --- javascript/Type Casting/README.md | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/javascript/Type Casting/README.md b/javascript/Type Casting/README.md index 47b636b..fbc3301 100644 --- a/javascript/Type Casting/README.md +++ b/javascript/Type Casting/README.md @@ -5,13 +5,31 @@ 强制类型转换是将值从一种数据类型自动或隐式地转换为另一种数据类型(例如字符串转换为数字)。类型转换类似于强制类型转换,因为它们都将值从一种数据类型转换为另一种数据类型,只有一个关键的区别——强制类型转换是隐式的,而类型转换可以是隐式的,也可以是显式的。 ```javascript -const value1 = "5"; -const value2 = 9; -let sum = value1 + value2; +console.log(String(2 - true)); // '1' +console.log('56' === String(56)); // true -console.log(sum); // '59' +console.log(Number(prompt())); // converts prompt value into a Number +console.log(Number('2350e-2')); // '23.5' +console.log(Number('23') + 7); // 30 + +console.log(Boolean('')); // false +console.log(Boolean(2) == true); //true ``` ### 隐式类型转换 隐式类型转换是将一种数据类型转换为另一种数据类型(确保在相同的数据类型之间完成操作),以便运算符或函数正常工作。 + +```javascript +// 隐式字符串转换 +console.log('25' + 15); // '2515' + +// 隐式Number转换 +console.log(23 * '2'); // 46 +console.log(23 - true); // 22 // true is converted into 1 +console.log(true - null); // 1 +console.log(false + undefined); // NaN // undefined into NaN + +const arr = []; +if(arr) { console.log('Hello World') }; // 'Hello World' +```