アカウント名:
パスワード:
LETはなんで私普通の関数ですみたいな顔してるんだ?構文は関数だが引数のセマンティクスが通常関数とは違うだろ。
例えば
LET(x:=A, y:=B, x+y)
みたいな構文にするべきじゃないのか?
LETのスコープ内処理だから問題ないだろ。セルアドレスを書けばRangeオブジェクトで、式を書けば式に応じたオブジェクトになる自由さから言えば、ローカル名前型というオブジェクトが追加になったと思えば良い。
この場合、文法的にどうかという話で、スコープ云々は関係ないのでは?
関数内の実引数は、値(オブジェクト含む)として評価された上で関数に渡される(だから、関数からは引数にどんな名前の変数が、どんな数式が渡されたか判断できない)ため、LET関数の場合、例えば、LET(x,A, y,B, x+y) だと、1番目と3番目は(まだ定義もしていない)変数の値を評価しているように見えてしまう。ここは、変数を定義しているように見えるよう変えるべきでは?
と主張しているように見えるのですが、、、
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
※ただしPHPを除く -- あるAdmin
ちょっと待て (スコア:0)
LETはなんで私普通の関数ですみたいな顔してるんだ?
構文は関数だが引数のセマンティクスが通常関数とは違うだろ。
例えば
LET(x:=A, y:=B, x+y)
みたいな構文にするべきじゃないのか?
Re:ちょっと待て (スコア:0)
LETのスコープ内処理だから問題ないだろ。
セルアドレスを書けばRangeオブジェクトで、式を書けば式に応じたオブジェクトになる自由さから言えば、ローカル名前型というオブジェクトが追加になったと思えば良い。
Re: (スコア:0)
この場合、文法的にどうかという話で、スコープ云々は関係ないのでは?
関数内の実引数は、値(オブジェクト含む)として評価された上で関数に渡される
(だから、関数からは引数にどんな名前の変数が、どんな数式が渡されたか判断できない)ため、
LET関数の場合、例えば、LET(x,A, y,B, x+y) だと、1番目と3番目は(まだ定義もしていない)変数の値を
評価しているように見えてしまう。
ここは、変数を定義しているように見えるよう変えるべきでは?
と主張しているように見えるのですが、、、