タイトルの通り、コードは次のとおりです。
質問は解決しました
上記の書き方は、test的值当成参数,传进去了fn2里面而已,fn2里面的参数t仅仅只是和testの値を同じにするだけです。 関数内で外部変数を変更したい場合は、次のように記述できます。
test
fn2
t
質問者は「外部変数の変更方法」に既に回答しています...
パラメータt当然不是指向test了,因为testはプリミティブ型であり、プリミティブ型は値が渡されます。つまり、値のコピーのみが相手の変数に渡されますが、参照型は参照(共有)渡されます。参照型が指されている オブジェクトポインタを渡すとき、相手の変数を変更すると、同じメモリアドレス、同じオブジェクトを指しているため、そのポインタのコピーが相手の変数に渡されます。
参照(共有)受け渡しも値受け渡しの一種と言えますが、渡される値はかなり特殊で、ポインタです。
JavaScript 関数はすべて、参照ではなく値によって渡されます。値が同じであることを除いて、t と test の間には何の関係もありません。
値を渡す必要はなく、直接変更するだけです
js での値の受け渡しと参照の受け渡しについて詳しく学習してください。 このように記述する必要がある場合は、テスト変数をオブジェクトにカプセル化し、そのオブジェクトをこの関数に渡して変更することができます。
リーリー
JavaScript の基本的な型にはポインターも参照もありません。したがって、これが唯一のトリックです。
上記の書き方は、
リーリーtest
的值当成参数,传进去了fn2
里面而已,fn2
里面的参数t
仅仅只是和test
の値を同じにするだけです。関数内で外部変数を変更したい場合は、次のように記述できます。
質問者は「外部変数の変更方法」に既に回答しています...
リーリーパラメータ
リーリーt
当然不是指向test
了,因为test
はプリミティブ型であり、プリミティブ型は値が渡されます。つまり、値のコピーのみが相手の変数に渡されますが、参照型は参照(共有)渡されます。参照型が指されている オブジェクトポインタを渡すとき、相手の変数を変更すると、同じメモリアドレス、同じオブジェクトを指しているため、そのポインタのコピーが相手の変数に渡されます。参照(共有)受け渡しも値受け渡しの一種と言えますが、渡される値はかなり特殊で、ポインタです。
JavaScript 関数はすべて、参照ではなく値によって渡されます。値が同じであることを除いて、t と test の間には何の関係もありません。
値を渡す必要はなく、直接変更するだけです
js での値の受け渡しと参照の受け渡しについて詳しく学習してください。
リーリーこのように記述する必要がある場合は、テスト変数をオブジェクトにカプセル化し、そのオブジェクトをこの関数に渡して変更することができます。
リーリー
JavaScript の基本的な型にはポインターも参照もありません。したがって、これが唯一のトリックです。
リーリー