开发者社区 问答 正文

js中call方法的问题。

console.log($("li").slice(0, 5));               // Object[li,li,li,li,li]
console.log([].slice.call($("li"), 0, 5));      // [li, li, li, li, li]

第一个好理解,返回的仍是对象object。
第二个中,我理解的对象冒充应该是$("li")把[]替换了。有点不理解,莫非对象冒充不是完全的对象替换吗?

展开
收起
云栖技术 2016-05-25 12:27:53 1794 分享 版权
1 条回答
写回答
取消 提交回答
  • 社区爱好者,专为云栖社区服务!

    第二个很好理解啊,用Array的属性去操作对象啊,最后返回的不就是Array么..
    你反而是被第一个误导了吧,第一个是用jQuery对象的slice属性去操作,这个属性是jQuery自己定义的,返回的当然还是对象啦。

    2019-07-17 19:14:05
    赞同 展开评论