私はJavaScriptのトークを見ていましたが、関数内でオブジェクトのプロパティを渡すと実際には実際の値が変更されます参照により。ここにスライドがあります: JavaScriptで参照渡しされる変数を変更する
私はコンセプトを練習しようとしたとき、そうではありませんでした。私が間違ってここに何を教え、そして私が間違っているなら、私を修正してください10. に変更することがobj.val期待していた
var obj = {val: 5};
function changeVal(x) {
x = x+5;
return x;
}
console.log(obj.val) // 5
console.log(changeVal(obj.val)) // 10
console.log(obj.val) // 5
:ここに私のコードです。おかげ
答えを読む:http://stackoverflow.com/a/13104500/812519このトピックに関する多くの回答とコメントがありますが、 – anvk
ですが、オブジェクトを渡すことはありません。 – dandavis
'call by value '、'参照による呼び出し '、'共有による呼び出し 'などがあります。 Javascriptでは、最初の(プリミティブの場合)、最後の(オブジェクトの場合)評価方法が使用されます。特に、渡されたオブジェクトの再割り当て時に 'by reference'と' by sharing'の違いに注目してください。 – ftor