2 回答

TA貢獻1786條經(jīng)驗 獲得超11個贊
<script type="text/javascript">
var arr=['a','b','c','d','e','f','g'];
arr.concat(['x','y']);
alert(arr.concat(['x','y']));
alert(typeof(arr.concat(['x','y'])));
document.writeln(arr);
document.write(arr.concat('x','y'));
</script>
<script type="text/javascript">
var arr=['a','b','c','d','e','f','g'];
arr.unshift('0');
alert(arr);
alert(typeof(arr.unshift('0')));
document.writeln(arr);
document.writeln(arr.unshift('0'));
</script>
我自己做了實驗,總結(jié)出你自己沒有好好區(qū)分數(shù)組和數(shù)組.方法()。第一個concat,也不需要對hellow從新賦值,你要么直接輸出arr.concat('x','y').要么重新定義一個數(shù)組來存放結(jié)果。
第二個arr是數(shù)組,arr.unshift('0')是數(shù)組方法返回的是個number。

TA貢獻1863條經(jīng)驗 獲得超2個贊
var hello=['a','b','c','d','e','f','g'];
> undefined
hello.concat(['x','y']);
> ["a", "b", "c", "d", "e", "f", "g", "x", "y"]
hello
> ["a", "b", "c", "d", "e", "f", "g"]
綜上:concat 是連接之后的新的數(shù)組,但是不會修改原始數(shù)組,
原始數(shù)組不發(fā)生變化。這個是我在瀏覽器控制臺打印的信息,和你的表述不同
unshift返回的是被修改后的數(shù)組的長度,所以是8
添加回答
舉報