美文网首页
js中.?、??、??=的用法和含义

js中.?、??、??=的用法和含义

作者: Iterate | 来源:发表于2021-11-01 16:53 被阅读0次

· ?. 后面跟不存在的属性 也不会报错,返回 undefined // 可选链(.?)
· ?? 赋值给前面,当前面的值不存在时 // 空值合并运算符(??)
· 左侧为null、undefined的时候,才会将右侧的值赋值给左侧 ??= // 空值赋值运算符(??=)

let a = 0;
let c = { name:'buzhimingqianduan' }

if(!!a || a === 0 ){
    b = a;
}else{
    b = c;
}

对就是上面那个例子,当我们想判断一个值存在,但是它等于0的时候,我们也需要当作它存在,于是就有了上面那样的例子,其实我们还可以这样做

let b;
let a = 0;
let c = { name:'buzhimingqianduan' }

b = a ?? c;

`
上面的例子,当a除了undefined、或者null之外的任何值,b都会等于a,否则就等于c.

和上面的例子类似
let b = '你好';
let a = 0
let c = null;
let d = ’123‘
b ??= a;  // b = “你好”
c ??= d  // c = '123'

当??=左侧的值为null、undefined的时候,才会将右侧变量的值赋值给左侧变量.其他所有值都不会进行赋值.同样在一些场景下,可以省略很多代码.

趣味问答时间:
let a;
let b = "不知名前端"
let c = null;
let d = 0;
let e;

e ??= a?.b ?? c ?? d?.a ?? b;
console.log(e)

`

相关文章

  • js中.?、??、??=的用法和含义

    · ?. 后面跟不存在的属性 也不会报错,返回 undefined // 可选链(.?)· ?? 赋值给前面,当前...

  • JS杂记

    JS中$含义及用法 js发送get 、post请求的方法简介

  • JS中$含义及用法

    $在JS中本身只是一个符号而异,在JS里什么也不是。但在JS应用库JQUERY的作者将之做为一个自定义函数名了,这...

  • js 循环

    js中forEach,for in,for of循环的用法 js的 for...in 和 for...of的用法 ...

  • JS逆向:arguments 的含义和用法

    了解这个对象之前先来认识一下javascript的一些功能: 其实Javascript并没有重载函数的功能,但是A...

  • Generator 函数的含义与用法

    Generator函数的含义与用法 Thunk函数的含义与用法 co函数库的含义与用法 async函数的含义与用法...

  • js中setInterval与setTimeout用法

    js中setInterval与setTimeout用法 JS里设定延时: 使用SetInterval和设定延时函数...

  • js中||和&&用法整理

    逻辑运算 此处省略 || 代替 if 的用法 先看几个例子:var x = 0||1; //10意味着false,...

  • js闭包语法(间断更新中...)

    js中的闭包写法和用法swift很像,但是也有区别

  • React-Native常用技巧

    JS 语法 1. js中 !!用法 js中 ! 的用法是比较灵活的,它除了做逻辑运算常常会用!做类型判断,可以用!...

网友评论

      本文标题:js中.?、??、??=的用法和含义

      本文链接:https://www.haomeiwen.com/subject/nkazaltx.html