読者です 読者をやめる 読者になる 読者になる

【javascript】値渡し、参照渡しとか

値渡し

var a = 1;                                                                                                                                                                                                        
var b = a;                                                                                                                                                                                                         
b = 2;                                                                                                                                                                                                             
                                                                                                                                                                                                                   
console.log(a); // => 1                                                                                                                                                                                            
console.log(b); // => 2                                                                                                                                                                                            

値渡し2

var a = "1";                                                                                                                                                                                                       
var b = a;                                                                                                                                                                                                         
b = "2";                                                                                                                                                                                                           
                                                                                                                                                                                                                   
console.log(a); // => "1"                                                                                                                                                                                          
console.log(b); // => "2"                                                                                                                                                                                          

参照渡し

var a = [1];                                                                                                                                                                                                       
var b = a;                                                                                                                                                                                                         
b[0] = 2;                                                                                                                                                                                                          
                                                                                                                                                                                                                   
console.log(a); // => [2]                                                                                                                                                                                          
console.log(b); // => [2]                                                                                                                                                                                          

参照渡し2

var a = { p: 1 };                                                                                                                                                                                                  
var b = a;                                                                                                                                                                                                         
b.p = 2;                                                                                                                                                                                                           
                                                                                                                                                                                                                   
console.log(a); // => { p:2 }                                                                                                                                                                                      
console.log(b); // => { p:2 }                                                                                                                                                                                      

値の比較

var a = "1";                                                                                                                                                                                                       
var b = "1";                                                                                                                                                                                                       
console.log (a == b); // => true                                                                                                                                                                                   

参照の比較

var a = [1];
var b = a;
console.log(a); // => [1]
console.log(b); // => [1];
console.log(a == b); // true                                                                                                                                                                                       
                                                                                                                                                                                                                   
b = [2];                                                                                                                                                                                                           
console.log(a); // => [1]
console.log(b); // => [2];
console.log(a == b); // false