ä¾åï¼
var a = [1, 2, 3];
var b = [5, 6];
var c=100ï¼
function change(a,bï¼c) {
c=99ï¼
a[0] = 4;
var c = a;
a = b;
b = c;
}
change(a,bï¼c);
alert(c); //"100";
alert(a); //"4,2,3"
alert(b); //"5,6"
è¿éé¢ä¹æäºè¿·ææ§ãè°ç¨äºäº¤æ¢å½æ°ï¼ä½aä¸bçå®é å¼å¹¶ä¸äº¤æ¢ãå 为å½æ°ä¸åªæ¯æ°å建äºä¸ä¸ªä¸a,bæ åºæåå°åç¸åçåæ°ãä¹å°±æ¯è¯´å½æ°ä¸ça,b,cé½ä¸æ¯å½æ°å¤ça,b,c .ä¸ä¼ä¿®æ¹å ¶æ åºå 容ã
å¦ä¸ä¸ªä¾åï¼
var a = [1,2,3];
var b = a;
a = [4,5,6];
alert(b); //[1,2,3]
çäºåé¢çå 容ï¼æ¤å¤å¾å®¹æ认为第ä¸æ¥æ¶ä¿®æ¹äºå°åæåçæ°æ®ï¼ä»1,2,3ä¿®æ¹ä¸º4,5,6, æ以alert(b); //[4,5,6]ä½è¦ææ¸ å建对象åå ¶ä»çåºå«ã第ä¸æ¥æå³å建äºä¸ä¸ª[4,5,6]ç对象ï¼å¹¶å°å ¶å°åèµç»a. æ以aä¸åæå[1,2,3].
åçï¼è¥æ³è¦bæaçå¼ï¼ä½ä¸æ³èå¨ãå¯ä»¥æ以ä¸æ¹æ³ï¼
æ¹æ³ä¸ï¼ç¨jqç$.extendæ¹æ³
<script type="text/javascript">
var a=[1];
var b;
b= $.extend(true,{},a)
b[0]++;
alert(b[0]);
</script>
<script type="text/javascript">
var a=[1];
var b=a.concat();
b[0]++;
alert(a[0]);
</script>
æ¹æ³ä¸ï¼for循ç¯æ°ç»ï¼æ¨ä¸ªèµå¼ã
var a=[1,2,3];
var b=[];
for(var i=0; i<a.length; i++){
b[i]=a[i];
}
æ¹æ³åï¼æ°ç»çslice()æ¹æ³ã
arrayObject.slice(start,end)é¿é2014å¹´çç¬è¯é¢ï¼
var a = 1;
var obj = {
b: 2
};
var fn = function () {};
fn.c = 3;
function test(x, y, z) {
x = 4;
y.b = 5;
z.c = 6;
return z;
}
test(a, obj, fn);
alert(a + obj.b + fn.c);
çæ¡ï¼12
é¦å testä¼ éè¿å»çå®åä¸ï¼aæ¯åºæ¬ç±»åï¼ï¼å¤å¶äºä¸ä»½å¼ï¼ï¼objæ¯objectï¼æåå°åï¼ä½ å¨æä¹å¨ï¼ï¼fnä¹å½ç¶ä¸æ¯åºæ¬ç±»åå¦ãå¨æ§è¡testçæ¶åï¼x被èµå¼ä¸º4(è·aæ²¡å ³ç³»ï¼åç©åçï¼aä»ç¶ä¸º1)ï¼yçb被èµå¼ä¸º5ï¼é£objçbä¹å为5ï¼zçcå为6ï¼é£fnçcå½ç¶ä¹ä¼æ¯6. æ以alertçç»æåºè¯¥æ¯1+5+6 =12. ï¼å ¶å®testä¸è¿åzä¹ä¸æ ·ï¼zä»ç¶æ¹åçï¼ã