最近在代码中发现同事调用变量时使用了?这个符号。出于好奇,上网搜了下其使用方法,发现还有和它类似的感叹号!,一并记录下来。

?用来检查问号前面的变量是否为null或者undefined时,程序不会出错。

stu3: Student;

<h1>stu3 id{{stu3?.id}}</h1>                // stu3 id
<h1>stu3 name{{stu3?.name}}</h1>      // stu3 name

比如上面的例子中stu3没有初始化,在调用id或者name的时候,就不会抛出异常。

!用来检查感叹号后面的变量为null或者undefined时,程序不会出错

 stu2: Student = {
    id: 1,
    name: undefined,
    age: 3
  };

<h1>stu2 name {{stu2!.name}}</h1>  // stu2 name 
<h1>stu2 id {{stu2!.id}}</h1>            // stu2 id 1

上面例子中stu2中name为undefined,在调用stu2.name时,需要判断下是否为undefined

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐