我正在读一本有关Angular的书,但找不到关于lambda表达式[hours, rate]) => this.total = hours * rate
的方括号用法的任何文档。尽管我知道可以在lambda表达式的主体内部使用这些参数(小时和费率)。我不明白为什么这个(hours, rate) => this.total = hours * rate)
不起作用,为什么我必须使用方括号[]。
Observable.combineLatest(this.invoiceForm.get('hours').valueChanges,
this.invoiceForm.get('rate').valueChanges).subscribe(
([hours, rate]) => this.total = hours * rate);
有人可以向我解释这是什么意思,以及在哪里可以找到有关该用法的文档。
注意:我知道CombineLatest所做的我不理解的是带有这些括号的lambda表达式用法。
答案 0 :(得分:4)
compile group: 'org.apache.tomcat', name: 'tomcat-jdbc', version: '9.0.10'
function test([a, b]) {
console.log(a, ',', b)
}
test([1, 2])
是函数的一个参数。而且,如果将数组作为第一个参数传递给函数,则数组的第一个元素将存储在[a, b]
中,第二个元素将存储在a
中。
答案 1 :(得分:0)
combine最新的rx运算符:
任何可观察对象发出一个值时,请从每个观察对象中发出最新值。
https://www.learnrxjs.io/operators/combination/combinelatest.html