[vue] オプションのチェーン演算子 (?.) および null マージ演算子 (??):


1. 質問 1:

http://www.codebaoku.com/question/question-sd-1010000042870944.html

ここに画像の説明を挿入

//1、npm安装
npm install  @babel/plugin-proposal-optional-chaining // 可选链运算符 ?.
npm install  @babel/plugin-proposal-nullish-coalescing-operator // 空值合并运算符 ??

//2、配置babel.config.js
module.exports = {
    
    
  plugins: [
    '@babel/plugin-proposal-optional-chaining',  // 可选链运算符 ?.
    '@babel/plugin-proposal-nullish-coalescing-operator'  // 空值合并运算符 ??
  ]
}
2. 質問 2:

https://www.cnblogs.com/the-big-dipper/p/17102843.html

ここに画像の説明を挿入

3. 使用方法:
[1] ヌル合体演算子 (??)

null 或者 undefined左オペランドが の場合はその右侧オペランドを返し、それ以外の場合は左オペランドを返す論理演算子。
注: 論理 OR 演算子 (||) とは異なり、論理 OR 演算子は、左側のオペランドが false の場合に右側のオペランドを返します。ただし、 || を使用して特定の変数のデフォルト値を設定すると、予期しない動作が発生する可能性があります。false の場合など ('' または 0)。

const foo = null ?? 'default string';
console.log(foo); // "default string"

const baz = 0 ?? 42;
console.log(baz); // 0

const baz = 0 || 42;
console.log(baz); // 42
[2] オプションのチェーン演算子 (?.)

チェーン内の各参照が有効であることを明示的に検証することなく、接続オブジェクトのチェーンの奥深くにあるプロパティの値を読み取ることができます。?. 演算子の機能は .chain 演算子の機能と似ていますが、参照が null (null または未定義) の場合にエラーが発生せず、この式の短絡戻り値が未定義である点が異なります。関数呼び出しで使用した場合、指定された関数が存在しない場合は、unknown を返します。

const adventurer = {
    
    
  name: 'Alice',
  cat: {
    
    
    name: 'Dinah'
  }
};

const dogName = adventurer.dog?.name;
console.log(dogName); //undefined
console.log(adventurer.someNonExistentMethod?.()); // undefined

console.log(adventurer.someNonExistentMethod.()); 
// Error: Unexpected token  .'('

おすすめ

転載: blog.csdn.net/weixin_53791978/article/details/131372539