gpt4 book ai didi

Javascript:为什么数组切片方法可以将节点列表或参数转换为数组?

转载 作者:行者123 更新时间:2023-11-30 13:00:04 25 4
gpt4 key购买 nike

我知道这样的用法:

Array.prototype.slice.call(document.querySelectorAll('a')) 

Nodelist 数据类型转换为不带参数的数组,但我从 W3CSchool 中读取关于slice的使用,需要第一个参数start:

start Required. An integer that specifies where to start the selection (The first element has an index of 0). Use negative numbers to select from the end of an array

所以没有参数并调用该方法就可以了吗?为什么这会成功?

最佳答案

我们来玩一个跟随面包屑导航的游戏

在 es5 规范中,

  1. Array.prototype.slice(start, end)

    Let relativeStart be ToInteger(start)

  2. ToInteger

    1. Let number be the result of calling ToNumber on the input argument

  3. ToNumber

    Undefined transforms to NaN

  4. 回溯 ToInteger

    2. If number is NaN, return +0.

因此,即使没有明确声明它是可选的,如果 startundefined,它也会变成 0

关于Javascript:为什么数组切片方法可以将节点列表或参数转换为数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17538646/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com