セッションを使用せずに変数を渡すことなく、各ユーザーに独自の元の変数を宣言するにはどうすればよいですか?Node.jsセッションを使用しない各ユーザーの元の変数
変数は各ユーザーのオリジナルであり、関数間で変数を共有できるので、PHPでこの問題は発生しませんでした。私は関数間で変数を共有したい場合は
<?php
$original_variable_for_each_user = "foo";
function foo() {
//it can reach variable
console.log(original_variable_for_each_user);
}
?>
は、しかし、私は、Node.jsの中でこれを行うことはできません。
状況1
var not_original_variable_for_each_user = "foo";
app.get('/', function(req, res) {
not_original_variable_for_each_user = "foo";
res.sendFile(__dirname + '/index.html');
});
function foo() {
//it can reach variable
console.log(not_original_variable_for_each_user);
}
状況2
app.get('/', function(req, res) {
var original_variable_for_each_user = "foo"
res.sendFile(__dirname + '/index.html');
});
function foo() {
//it can not reach original_variable_for_each_user
console.log(original_variable_for_each_user);
}
私はあなたの答えに感謝します。
何:
あなたの第二の例は以下のように書き換えることができますか?あなたの事例を実行すると何が起こり、何が起こると思いますか? – ext
状況1-変数はpublicとして宣言されているため、他の関数に到達することができます。しかし、あなたはNode.jsの中でパブリックとして変数を宣言する場合、変数はユーザーごとに固有のものではないが、状況2 - 変数はユニークですが、それはエラーがスローされますので、他の機能から到達可能ではありません。私はPHPのように各ユーザに固有の公開変数を持つことを期待しています。 –
変数*ユーザー*(だけではなく、要求/接続毎)に聞こえるあたり*正確に*私にセッション変数のように。 – Bergi