Typescript: What is the difference between if(variable), if(



在typescript中,之间有什么区别

if (x)
if (!x)
if (!!x) 

根据变量的类型,这会有不同的行为吗?(字符串、数字、对象等(。我上面这句话的意思是:

const myString = 'hello';
const myObject = new MyClass(10, 'Luke');
const ten = 10;
if(myString) 
if(!myString)
if(!!myString)
if(myObject)
if(!myObject)
if(!!myObject)
if(ten)
if(!ten)
if(!!ten)

在本例中,当代码输入一个if而不是另一个if时?

Typescript与此无关,它是javascript。

如果。。。其他

if语句在指定条件为真的。如果条件为falsy,则可以执行另一条语句。

  • !-逻辑非运算符,可以将值转换为反向布尔值
  • !!-将值转换为布尔值(模拟布尔值(

错误值:数字0、BigInt0nnullundefined、布尔值false、数字NaN、字符串''

const myString = 'hello';
const myObject = { test: 123 };
const ten = 10;
console.log(myString);
console.log(!myString);
console.log(!!myString, Boolean(myString));
console.log(myObject);
console.log(!myObject);
console.log(!!myObject, Boolean(myObject));
console.log(ten);
console.log(!ten);
console.log(!!ten, Boolean(ten));

最新更新