javascript - 空文字列の使用について。
PHP中文网
PHP中文网 2017-07-05 10:53:08
0
4
769

PHP中文网
PHP中文网

认证高级PHP讲师

全員に返信(4)
过去多啦不再A梦

あなたが与えたコードから判断すると、現在の使用シナリオでは文字列型に値を事前に割り当てる必要はありません。事前に設定しておかなければ失敗することはありません。

しかし、値を代入しない場合と空の文字列を代入する場合には本質的な違いがあります。つまり、変数の型が変更されます。

代入が行われていない場合は、未定義型、値が null の場合、null 型、値が空の文字列 "" の場合、string 型になります。

念のため言っておきますが、この変数の期待される結果は文字列型であるため、宣言時にその型を指定するのが安全な方法です。

指定しない場合はどうなりますか?それが時々問題を引き起こすこともあります。

この問題は主に、この変数を使用して他のデータを結合するときに発生します。これにより、暗黙的な型変換がトリガーされる可能性があり、違いを見つけることができます。

以下の通り:

リーリー

それで、結果はどうなったでしょうか? 「a」ではなく「未定義a」です。

a が null にプリセットされている場合、結果は「nulla」になります。

あなたの例では、resはそれと接合されるのではなく直接割り当てられているため、空の文字列に割り当てられていなくても影響はありませんが、お勧めできません。

別の例として、「0123456789」などの文字列も必要な場合は、0 ~ 9 の番号を結合します。 リーリー

申告しなくても大丈夫ですか?いいえ、res は数値型に変換されますが、変換後の unknown は NaN となり、最終的に得られる結果も NaN になります。

これは、res に値 "" 空の文字列が割り当てられている場合にのみ正しいです。

いいねを押す +0
为情所困

現在のケースは空の文字列として事前定義する必要はなく、コードを読みやすくするために削除できます

空の文字列は通常、文字列に対して条件判定操作が実行されるシナリオ、または文字列自体に対して操作が実行されるシナリオで使用されます。
最初のタイプ:

リーリー

2 番目のタイプ:

リーリー
いいねを押す +0
伊谢尔伦

リーリー

いいねを押す +0
曾经蜡笔没有小新

個人的には、これは作者が意図せずに行ったものだと思います...

それを解釈することに固執するなら、これは良いか悪いかのどちらかです。良い点は、res が文字列変数であることを直感的に認識できるため、可読性が向上することです。悪い点は、オブジェクトの作成と解放の余分なプロセスがあり、その損失は無視できるものではありますが、パフォーマンスの低下を引き起こすことです。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!