📌  相关文章
📜  如何在 TypeScript 中检查 null 和 undefined ?

📅  最后修改于: 2022-05-13 01:56:46.646000             🧑  作者: Mango

如何在 TypeScript 中检查 null 和 undefined ?

在本文中,让我们学习如何在 TypeScript 中检查变量是否为空或未定义。当一个变量在声明后没有被赋值时,它是未定义的。 Null 指的是一个空值或不存在的值。 null 表示没有值。要使变量为空,我们必须为其分配空值,因为在打字稿中默认情况下未分配的值称为未定义。我们可以使用 typeof 或 '==' 或 '===' 来检查变量在 typescript 中是否为空或未定义。

通过使用 typescript 编译器 tcs,我们将 typescript 代码转换为 javascript,然后运行 javascript 文件。

tcs name_of_the_typescript_file

使用以下命令在终端中运行 javascript 文件:

node name_of_the_js_file

示例 1:在此示例中,我们演示了变量何时为空以及何时为空。

Javascript
let s: string;
  
// Returns undefined
console.log(s);
let n: number;
  
// Assigned null value
n = null;
console.log(n);


Javascript
let s: string;
  
// Returns undefined
console.log(typeof s);
let n: number;
  
// Assigned null value
n = null;
console.log(typeof n);


Javascript
let s: string;
let n: number;
  
// Assigned null value
n = null;
console.log(n == null); // Returns true
console.log(s == undefined); // Returns true
console.log(null == undefined); // Returns true


Javascript
let s: string;
let n: number;
  
// Assigned null value
n = null;
console.log(n === null); // Returns true
console.log(s === undefined); // Returns true
console.log(null === undefined); // Returns false


输出:

undefined
null

示例 2:在此示例中,typeof运算符返回我们要检查的变量的类型。在下面的示例中,我们检查变量。未分配的变量返回未定义,分配为 null 的值返回对象为 'null' 也被视为 javascript 中的 null 对象。

Javascript

let s: string;
  
// Returns undefined
console.log(typeof s);
let n: number;
  
// Assigned null value
n = null;
console.log(typeof n);

输出:

undefined
object

示例 3:在此示例中,'==' 等号运算符帮助我们检查变量是 null 还是未定义,但是当我们检查 null == undefined 时,结果为 'true'。它也被称为平等检查。

Javascript

let s: string;
let n: number;
  
// Assigned null value
n = null;
console.log(n == null); // Returns true
console.log(s == undefined); // Returns true
console.log(null == undefined); // Returns true

输出:

true
true
true

例 4:在这个例子中,就像前面的例子一样,我们使用 '===' 来代替 '==' 来检查。这种方法称为严格相等检查。当检查是否 null=== undefined 时,它返回 false 与以前的方法不同。

Javascript

let s: string;
let n: number;
  
// Assigned null value
n = null;
console.log(n === null); // Returns true
console.log(s === undefined); // Returns true
console.log(null === undefined); // Returns false

输出:

true
true
false