回答編集履歴
1
変数 val 値が String 型である事を保証
answer
CHANGED
@@ -1,11 +1,13 @@
|
|
1
|
-
変数
|
1
|
+
**変数 val の値が String 型であるなら**、全ての結果は確かに等価ですが、行われる処理は異なります。
|
2
2
|
|
3
3
|
- `!=`, `==` は両辺の型が不一致の場合に型を合わせる処理が発生します
|
4
4
|
- `if ()` は Boolean 型に変換する処理が発生します(ToBoolean)
|
5
5
|
- `val.length`, `val[0]` はプロパティ参照処理が発生します
|
6
6
|
|
7
|
-
|
7
|
+
---
|
8
8
|
|
9
|
+
私は**変数 val 値が String 型である事を保証した上で**、コストが一番安い(無駄な処理が一番少ない)下記コードを採用しています。
|
10
|
+
|
9
11
|
```JavaScript
|
10
12
|
if (val) {
|
11
13
|
console.log('値が入っています');
|