关于JS数组的问题

a: AA[];
b: AA;

ngOnInit() {    this.a = [];
}

x() {    this.a = [...this.a, this.b];  <--- 这是什么意思?
}


蓝山帝景
浏览 881回答 2
2回答

繁星coding

由这段函数我们可以看到如果为数组会创建新数组克隆,否则会调用 Array.from 方法从类似数组或可迭代对象中创建新的数组实例function&nbsp;_toConsumableArray(arr)&nbsp;{&nbsp;if&nbsp;(Array.isArray(arr))&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(var&nbsp;i&nbsp;=&nbsp;0,&nbsp;arr2&nbsp;=&nbsp;Array(arr.length);&nbsp;i&nbsp;<&nbsp;arr.length;&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arr2[i]&nbsp;=&nbsp;arr[i];&nbsp;}&nbsp;return&nbsp;arr2;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;else&nbsp;{&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;Array.from(arr);&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;}我们再来试一遍&nbsp;[...'test',10];&nbsp;&nbsp;&nbsp;//&nbsp;['t','e','s','t',10]&nbsp;结果和预期一样 &nbsp;//再回顾这段代码就清晰许多了 &nbsp;this.a&nbsp;=&nbsp;[...this.a,&nbsp;this.b]; &nbsp;判断&nbsp;this.a&nbsp;类型&nbsp;->&nbsp;为数组则克隆返回新数组&nbsp;=>&nbsp;用&nbsp;this.a&nbsp;指向&nbsp;[].concat()&nbsp;方法拼接的&nbsp;新数组&nbsp;和&nbsp;this.b
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

React.JS