当前位置:  开发笔记 > 编程语言 > 正文

javascript-slice(-1)中slice的用途是什么

如何解决《javascript-slice(-1)中slice的用途是什么》经验,为你挑选了1个好方法。

下面的代码有时会返回意外的输出(至少对我来说)。

    var arr1 = "john".split('');
    var arr2 = arr1;
    var arr3 = "jones".split('');
    arr2.push(arr3);
    console.log("array 1: length=" + arr1.length + " last=" + arr1.slice(-1));

//返回[j,o,n,e,s]

 console.log("array 1: length=" + arr1.length + " last=" + arr1.slice(-2));

//返回[n,j,o,n,e,s]

此输出背后的逻辑是什么?



1> epascarello..:

你的数组是

["j", "o", "h", "n", ["j", "o", "n", "e", "s"] ]

因此,当您删除最后一个索引时,您只有数组

当您做两个时,您将得到数组和字母“ n”

自己做切片,看看结果:

console.log(arr1.slice(-1))  //[Array[5]]
console.log(arr1.slice(-2))  //["n", Array[5]]

您的输出看起来像是输出一个数组的原因是因为在连接它时调用了toString()。.toString()只是使数组变平并用逗号将索引连接在一起。

推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有