問題タブ [scope]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1985 参照

php - PHP関数でMySQL接続が機能することを確認する

次の形式のコードがあります。

doSomething() にはデータベースへの接続がないため、この (タイプの) コードは機能しません。誰も理由を説明できますか?doSomething() を呼び出すに、$con 接続を作成します。では、なぜ関数は接続がないかのように動作するのでしょうか?

doSomething($con) のような関数に接続を渡す以外に、これを修正する方法はありますか?

0 投票する
2 に答える
9213 参照

c++ - プライベート メンバー変数のスコープ - C++

私は C++ を使い始めたばかりで、クラ​​ス内のプライベート メンバー変数のスコープがどのように機能するかを理解するのに問題がありました。以下のコードをご覧ください

上記のコードでは、変数 "container" はプライベート メンバー変数です。「Foo」インスタンスを呼び出して、それを他のいくつかのメソッドとクラスに渡しています。以下は私の疑問です

  1. 変数「コンテナ」のスコープはどうなりますか? インスタンス foo を削除するまで、その変数は存在しますか?
  2. 「コンテナ」をベクトルへのポインタとして作成する必要がありますか?

助けてくれてありがとう

0 投票する
4 に答える
7484 参照

python - Python グローバル、ローカル、および UnboundLocalError

私は最近、このケースに出くわしましたがUnboundLocalError、これは奇妙に思えます:

生成するもの:

pprintは明らかに にバインドされており、次のステートメントでglobalsバインドされます。ここでバインディングをlocals解決するのが幸せではない理由を誰かが説明できますか?pprintglobals

編集:良い回答のおかげで、関連する用語で質問を明確にすることができます:

コンパイル時に、識別子pprintはフレームに対してローカルとしてマークされます。実行モデルには、ローカル識別子がバインドされているフレーム内の場所の区別はありませんか? 「このバイトコード命令までグローバルバインディングを参照し、その時点でローカルバインディングに再バインドされている」と言えますか、それとも実行モデルはこれを考慮していませんか?

0 投票する
6 に答える
7533 参照

c# - デリゲート内の変数のスコープ

私は次のことをかなり奇妙に感じました。繰り返しになりますが、私は主に動的言語でクロージャーを使用してきましたが、これは同じ「バグ」の疑いがあるべきではありません。以下は、コンパイラを不幸にします:

それは言います:

「i」という名前のローカル変数をこのスコープで宣言することはできません。これは、「子」スコープで他の何かを示すために既に使用されている「i」に別の意味を与えるためです。

したがって、これは基本的に、デリゲート内で宣言された変数が宣言された関数のスコープを持つことを意味します。私が期待していたものとはまったく異なります。私は関数を呼び出そうとさえしていません。少なくとも Common Lisp には、変数を本当にローカルにしたい場合は、変数に動的な名前を付ける必要があると言う機能があります。これは、リークしないマクロを作成する場合に特に重要ですが、このような場合にも役立ちます。

だから、この問題を回避するために他の人が何をしているのか疑問に思っていますか?

明確にするために、デリゲートで宣言する変数がデリゲートの後に宣言された変数に干渉しないソリューションを探しています。そして、デリゲートの前に宣言された変数を引き続きキャプチャできるようにしたいと考えています。

0 投票する
22 に答える
3648691 参照

python - 関数でグローバル変数を使用する

関数でグローバル変数を作成または使用するにはどうすればよいですか?

ある関数でグローバル変数を作成した場合、そのグローバル変数を別の関数で使用するにはどうすればよいですか? アクセスが必要な関数のローカル変数にグローバル変数を格納する必要がありますか?

0 投票する
4 に答える
9890 参照

javascript - 外側のスコープを囲むときに JavaScript 変数を逆参照するにはどうすればよいですか

わかりました、これが問題のスクリプトです。

このスクリプトは、配列を使用して、1、2、3 の 3 つの div を生成します。
配列内の位置のインデックスを警告する各 div に (簡単にするために Dom0) クリック ハンドラーを設定しました。-そうではないことを除いて!配列の最後のインデックスである 3 を常に警告します。
これは、'alert( i )' の 'i' が外部スコープ (この場合はグローバル) へのライブ参照であり、ループの最後でその値が 3 であるためです。必要なのは、ループ内で i を逆参照する方法です。

これは1つの解決策であり、私はそれを使用する傾向があります.

他の誰かが何か違うことをしていますか?
本当にスマートな方法はありますか?
図書館がこれをどのように行うか知っている人はいますか?

0 投票する
9 に答える
25430 参照

python - (リスト内包表記/for ループで) ラムダのリストを作成するにはどうすればよいですか?

Python で定数のリストからラムダ オブジェクトのリストを作成したいと考えています。例えば:

ただし、これを実行すると、ラムダ オブジェクトのリストが作成されます。

私はそれが印刷されることを期待します

代わりに、次のように出力します。

ラムダにすべて間違ったパラメータが与えられているようです。私は何か間違ったことをしましたか?それを修正する方法はありますか? 私はPython 2.4にいると思います。

編集:もう少し試してみると、これが思いつきました:

予想される 1 から 25 までの正方形を出力しますが、以前の print ステートメントを使用します。

それでも私にすべて25のsを与えます。これら 2 つの印刷呼び出しの間で、既存のラムダ オブジェクトはどのように変化したのでしょうか?

関連する質問: map() とリスト内包表記の結果が異なるのはなぜですか?

0 投票する
3 に答える
18641 参照

xslt - ネストされたループ内から外側のループの要素にアクセスするにはどうすればよいですか?

xsl:for ループをネストしました:

内側のループ内から、外側のループの現在のノードの属性にアクセスするにはどうすればよいですか?

私は自分が次のようなコードを書いていることに気づき続けています:

いくつかの情報にアクセスする必要があり、それぞれの情報に対して 1 つの変数を作成する必要がある場合があるため、これはうまくスケーリングできません。もっと簡単な方法はありますか?

0 投票する
4 に答える
71648 参照

c# - C#のプライベート内部クラス-なぜそれらはより頻繁に使用されないのですか?

私はC#に比較的慣れていないので、C#プロジェクトに取り掛かるたびに(C#ではほぼ成熟したプロジェクトにしか取り組んでいません)、なぜ内部クラスがないのでしょうか。

多分私は彼らの目標を理解していません。私にとって、内部クラス(少なくともプライベート内部クラス)は、Pascal / Modula-2 / Adaの「内部プロシージャ」によく似ています。理解を容易にするために、メインクラスをより小さな部分に分割することができます。

例:これがほとんどの場合に見られるものです:

ClassBは(少なくともしばらくの間)ClassAによってのみ使用されるため、このコードは次のように表現した方がよいと思います。

この件についてあなたから聞いてうれしいです-私は正しいですか?

0 投票する
5 に答える
64826 参照

javascript - 「この」変数を簡単に設定しますか?

「this」変数を設定する良い方法がわからないことを除いて、私はJavascriptについてかなりよく理解しています。検討:

最後の4行なしでこれを行う方法はありますか? それはかなり面倒です...私は美しく賢いと思った匿名関数をバインドしようとしましたが、役に立ちませんでした:

明らかに、変数を myFunction に渡すことはオプションです...しかし、それはこの質問のポイントではありません。

ありがとう。