nullとundefinedの違いを知っていますか?
1810 ワード
事件の発端
スペースまたはnullで「再入力」メッセージを表示するコードを作成しています.
(typescriptを使用してNestJSで開発) nullとundefinedは区別する必要があります.
下図に示すように、コンソールのdataはundefinedとして印刷され、対応するif文が起動します.
なぜか見てみましょう!
スタート!
JavaScriptには、nullとundefinedの2つの「なし」を表す値があります.
Undefinedは、値が代入されていない変数または属性を使用するために使用されます.
nullはオブジェクトが存在しないことを示します.
typeof演算を行い、次の値を返します.
A.undefinedも「なし」を表す値ですが、代入されていない変数の意味があります.不在を明確に表示したい場合はnullを使用したほうがいいです.
Null Check
コードを記述する際には、値の有無(nullまたはundefined)を考慮する必要があります.nullまたは未定義の値をnull checkと呼ぶ操作を確認します.
事件の起因もnull checkによって発生した.
nullとundefinedはともに「なし」を表すため、以下の演算を行うとtrueを返す.
(未定義のデータ型はundefined、nullのデータ型はobject)
つまり,等号を2つに比較したため,このような問題が発生した.
コメントリンク
**typescriptもjavascriptから発展したのでjavascript構文で理解しました.
スペースまたはnullで「再入力」メッセージを表示するコードを作成しています.
(typescriptを使用してNestJSで開発)
//예를 들어 요런 모습
if(data == '' || data == null)
return "다시 입력하세요"
しかし下図に示すように、コンソールのdataはundefinedとして印刷され、対応するif文が起動します.
console.log(data) //출력값 : undefined
if(data == '' || data == null)
return "다시 입력하세요" //return 값 : "다시 입력하세요"
ではnull=undefinedですか?(はい)なぜか見てみましょう!
スタート!
JavaScriptには、nullとundefinedの2つの「なし」を表す値があります.
Undefinedは、値が代入されていない変数または属性を使用するために使用されます.
nullはオブジェクトが存在しないことを示します.
typeof演算を行い、次の値を返します.
typeof null // 'object'
typeof undefined // 'undefined'
Q.では、「ない」という意味では、どちらを使うべきでしょうか?A.undefinedも「なし」を表す値ですが、代入されていない変数の意味があります.不在を明確に表示したい場合はnullを使用したほうがいいです.
Null Check
コードを記述する際には、値の有無(nullまたはundefined)を考慮する必要があります.nullまたは未定義の値をnull checkと呼ぶ操作を確認します.
事件の起因もnull checkによって発生した.
nullとundefinedはともに「なし」を表すため、以下の演算を行うとtrueを返す.
undefined == null //true
ただし、値のタイプが異なるため、以下の演算を行うとfalseが返されます.(未定義のデータ型はundefined、nullのデータ型はobject)
undefined === null // false
同じ意味を表しています.// 아래 세 개의 식은 완전히 같은 의미입니다.
input !== null && input !== undefined;
input != null;
input != undefined;
// 아래 세 개의 식은 완전히 같은 의미입니다.
input === null || input === undefined;
input == null;
input == undefined;
事件を解決するつまり,等号を2つに比較したため,このような問題が発生した.
コメントリンク
**typescriptもjavascriptから発展したのでjavascript構文で理解しました.
Reference
この問題について(nullとundefinedの違いを知っていますか?), 我々は、より多くの情報をここで見つけました https://velog.io/@like02_like0/null과-undefined의-차이점을-아시나요テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol