teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

更に修正

2016/06/12 16:40

投稿

mpyw
mpyw

スコア5223

answer CHANGED
@@ -11,8 +11,10 @@
11
11
 
12
12
  -----
13
13
 
14
- しかし本質は,**関数の実行結果に対して代入しようとしている**というところにあります.**代入演算子の左側に来れるのは「変数」プロパティのみに限られます.「値」に対しての代入できません.**
14
+ しかし本質は,**関数の実行結果に対して代入しようとしている**というところにあります.代入演算子の左側に来れるのは**「変数シンボル**(オブジェクトのプロパティを含む)のみに限られます.**「値」**に対しての代入できません.
15
15
 
16
+ (注意) ここでいう「シンボル」はECMA Script 6の `Symbol` とは無関係です
17
+
16
18
  ```javascript
17
19
  x = 1
18
20
  ```
@@ -21,7 +23,7 @@
21
23
  x
22
24
  ```
23
25
 
24
- この2つの`x`の違いはわかりますか?1つ目は変数であり,2つ目は式です.式は評価されると値になります.JavaScriptは変数と式を区別しませんが,例えばシェルスクリプトは`$`の有無で区別しますよね.
26
+ この2つの`x`の違いはわかりますか?1つ目は変数シンボルであり,2つ目は式です.式は評価されると値になります.JavaScriptは変数シンボルと式を区別しませんが,例えばシェルスクリプトは`$`の有無で区別しますよね.
25
27
 
26
28
  ```Bash
27
29
  x=1

1

Symbolと語弊がありそうなので修正

2016/06/12 16:40

投稿

mpyw
mpyw

スコア5223

answer CHANGED
@@ -11,7 +11,7 @@
11
11
 
12
12
  -----
13
13
 
14
- しかし本質は,**関数の実行結果に対して代入しようとしている**というところにあります.**代入演算子の左側に来れるのは原則的に「変数」「プロパティ」のみに限られます.「値」に対しての代入できません.**
14
+ しかし本質は,**関数の実行結果に対して代入しようとしている**というところにあります.**代入演算子の左側に来れるのは「変数」「プロパティ」のみに限られます.「値」に対しての代入できません.**
15
15
 
16
16
  ```javascript
17
17
  x = 1
@@ -21,7 +21,7 @@
21
21
  x
22
22
  ```
23
23
 
24
- この2つの`x`の違いはわかりますか?1つ目はシンボルであり,2つ目は式です.式は評価されると値になります.JavaScriptはシンボルと式を区別しませんが,例えばシェルスクリプトは`$`の有無で区別しますよね.
24
+ この2つの`x`の違いはわかりますか?1つ目は変数であり,2つ目は式です.式は評価されると値になります.JavaScriptは変数と式を区別しませんが,例えばシェルスクリプトは`$`の有無で区別しますよね.
25
25
 
26
26
  ```Bash
27
27
  x=1