![](/img/trans.png)
[英]How do I get the metadata of a file after uploading it to firestore as a return value to the function, given that the upload process is asynchronous?
[英]How can I get access to a value after looping a asynchronous function
我试图运行引发异步函数的循环并计算所有元素的总和,在这里我可以访问最终sum
。
it("Select.all practice", function(){
element.all(by.css('.items li')).then(function(items) {
var len = items.length;
var sum = "";
for(var counter = 0; counter<len;counter++){
items[counter].getText().then(function(item){
sum += item;
console.log(sum);
});
}
});
});
有一个非常有用的reduce()
函数,非常适合用例:
element.all(by.css('.items li')).reduce(function(acc, elem) {
return elem.getText().then(function(text) {
return acc + parseInt(text);
});
}, 0).then(function (value) {
console.log(value);
});
看起来您在尝试添加时正在处理String。 尝试以下
it("Select.all practice", function(){
element.all(by.css('.items li')).then(function(items) {
var len = items.length;
var sum = 0;
for(var counter = 0; counter<len;counter++){
items[counter].getText().then(function(item){
sum += parseInt(item);
console.log(sum);
});
}
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.