最近、ふと自分が書いたJavaScriptのコードが肥大化していることに気づき、JavaScriptの省略方法について勉強し始めました。このようにして、JavaScript コードがよりきれいに見えるようになり、テクノロジーも向上します。では、空の判断をどのように略すのでしょうか?
以下は空の判断の略です。
コードは次のとおりです
if (変数 1 !== null || 変数 1 !== 未定義 || 変数 1 !== '') {
var 変数 2 =
}
上記は、変数 1 の場合を意味します。は空のオブジェクトではありません。未定義であるか、空の文字列と等しくない場合は、variable2 変数を宣言し、variable1 を variable2 に割り当てます。つまり、variable1 が存在する場合は、variable1 の値が variable2 に割り当てられ、存在しない場合は空の文字列になります。以下の短縮コードのようなものです。
略語コード:
コードは次のとおりです
var variable2 = variable1 || '';
次は間違ったメソッドです:
コードは次のとおりです
var exp = null
if (exp == null)
{
alert("is null");
}
exp が未定義の場合、null と未定義は異なりますが、null と同じ結果が得られます。注: このメソッドは、null と未定義を同時に判定したい場合に使用できます。
コードは次のとおりです
var exp = null;
if (!exp)
{
alert("is null")
}
exp が未定義、または数値 0 の場合、または false の場合、null と両方は異なりますが、null と同じ結果が得られます。注: この方法は、null、未定義、数値ゼロ、偽を同時に判定したい場合に使用できます。
コードは次のとおりです
var exp = null;
if (typeof exp == "null")
{
alert("is null")
}
exp が null の場合、typeof null は常にオブジェクトを返すため、このように判断することはできません。
コードは次のとおりです
var exp = null;
if (isNull(exp))
{
alert("is null")
}
文字列が空かどうかを確認します
は、スペース、タブ、フォーム フィードなどを含む任意の空白文字と一致します。 【fnrtv】に相当。 多くの場合、次のように、長さは文字列が空かどうかを直接判断するために使用されます:
コードは次のとおりです
var strings = '';
if (string.length == 0)
{
alert('空にすることはできません' );
}
しかし、この場合、ユーザーがスペース、タブ、またはフォーム フィードを入力した場合はどうなるでしょうか。ただし、そのようなデータは必要なものではありません。
実際、正規表現を使用してこれらの「空」記号を削除して判断することができます
コードは次のとおりです
var strings = ' ';
if (strings.replace(/(^s*)|(s*$)/g, " ").length = =0)
{
alert('can not be empty');
}
s 小文字の s は、スペースを含む任意の空白文字と一致します、タブ、フォーム区切りなど。 【fnrtv】に相当。
これは空であるという判断の略です。上記の方法があなたの参考になれば幸いです。