この記事では、未定義または null の可能性があるデータにアクセスしようとするときにエラーを防ぐ方法を検討し、できる方法を見ていきます。必要に応じてデータを効果的に管理するために使用します。
JavaScript で、ネストされたオブジェクト内の値または関数にアクセスしようとすると、結果が 未定義 の場合、コードがエラーをスローする可能性があります。このエラーにより、コードの実行が停止する可能性があります。ただし、オプションの連鎖演算子を使用する場合、オブジェクト内の値または関数にアクセスしようとすると、値または関数が存在しない場合にエラーをスローする代わりに、未定義が返されます。これにより、コードがクラッシュするのを防ぎます。
例:
const person = { name: 'John', address: { city: 'New York' } }; console.log(person.address?.city); // 'New York' console.log(person.address?.country); // undefined, no error
変数の値が null または未定義 の場合、コードが壊れる可能性があります。変数が null または未定義の場合にデフォルト値を割り当てるには、** null 合体演算子 (??) を使用できます。**
例:
function getConfig(config) { return config ?? { timeout: 1000, retries: 3 }; } let userConfig = null; let finalConfig = getConfig(userConfig); // { timeout: 1000, retries: 3 } console.log(finalConfig);
セットで重複を削除:
配列に 重複値 が含まれている場合は、Set を使用してそれらの重複を削除できます。この構造体の使用方法は次のとおりです:
const numbers = [1, 2, 3, 4, 4, 5, 6, 6, 7, 8, 9, 9]; const uniqueNumbers = [...new Set(numbers)]; console.log(uniqueNumbers); // [1, 2, 3, 4, 5, 6, 7, 8, 9]
WeakSet による重複の防止:
WeakSet はオブジェクトへの参照を保持する ため、オブジェクトを WeakSet に追加できるのは 1 回だけです。以下に例を示します:
// Creating a WeakSet const weakset = new WeakSet(); // Defining objects const obj1 = { name: 'Alice' }; const obj2 = { name: 'Bob' }; // Adding objects to the WeakSet weakset.add(obj1); weakset.add(obj2); console.log(weakset.has(obj1)); // true console.log(weakset.has(obj2)); // true // Attempting to add the same object again weakset.add(obj1); // obj1 is already present, won't be added again console.log(weakset.has(obj1)); // true console.log(weakset.has(obj2)); // true // Removing an object from the WeakSet weakset.delete(obj1); console.log(weakset.has(obj1)); // false // Adding the object again weakset.add(obj1); console.log(weakset.has(obj1)); // true
この記事では、未定義または null の可能性がある値にアクセスする際のエラーを防ぐのに役立ついくつかの重要な概念と、必要に応じてデータをより効果的に管理する方法について説明しました。
以上が知っておくべきJavaScriptの機能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。