我想重写下面的
function abc
function abc(){
return ['a', 'b', 'c'];
}
在某种程度上我可以用它来填充一个数组,就像这样:
$arr = [abc(), 'd', 'etc'];
并且
$arr
将是['a', 'b', 'c', 'd', 'etc']
。
我知道我可以做到
$arr = [...abc(), 'd', 'etc'];
,但我想知道是否可以不使用...(省略号)。
如果可以的话,那怎么可能呢?但如果不可能,为什么?
你想要的东西是不可能的。
[abc(), 'd', 'etc']
始终会导致 abc()
恰好将 一个值插入到数组中,而不是三个。无论
abc()
返回什么,都将准确地插入到该位置。你可以用不同的方式写,这样可能会更清楚:
$result = abc();
[$result, 'd', 'etc'];
$result
只会恰好是 one 值。该值本身可能是一个数组,但结果将如下所示:
[['a', 'b', 'c'], 'd', 'etc']