result.push(...route.children)是什么作用呢?

新手上路,请多包涵

在看vue项目代码时有一段:result.push(...route.children)这样的代码,...rout.children是啥意思呢?什么作用?
result.push(route.children)不可以吗?

阅读 2k
2 个回答
result = [1,2,3]
route  = {
    children: [4,5,6]
}

result.push(...route.children)
# ... 操作符在此处起的作用是将数组展开,相当于:
result.push(4, 5, 6)
# 结果都是
[1, 2, 3, 4, 5, 6]

# 而如果不使用 ... 操作符,route.children 整体作为一个元素添加至数组末尾
result.push(route.children)
# 结果是
[1, 2, 3, [4, 5, 6]]

这个可以看一下 es6 的数组拓展部分 就懂了

推荐问题