簡體   English   中英

在TypeScript中返回不同類型的數組

[英]Return an array of different types in TypeScript

在TypeScript 2.5.3中,我有一堆作為鏈接的硒WebElement。 我需要將它們的目標存儲在字符串數組中。 從C#出發,我將Linq與.Select() ,它本身從選擇器返回返回類型的列表。 在Typescript中,這似乎不太好用:

    let categoryLinkElements = await this.driver.findElements(By.css('ul li a'));
    let categoryLinks = categoryLinkElements.filter(async linkElement => await linkElement.getAttribute('href'));

categoryLinkElementsWebElement的數組。 並且linkElement.getAttribute('href')返回Promise<string> 因為使用了await ,所以我希望categoryLinks是一個字符串數組,就像C#中List.Select()的相同行為一樣。 相反, categoryLinksWebElement[]

為什么? 以及如何獲得正確的返回值?

Array.filter在這里似乎是錯誤的,相反,它應該用於返回與輸入數組相同的值,但帶有一些過濾條件。 而是Array.map是C#中List.Select的正確等效項。

預期的工作如下:

let categoryLinks = categoryLinkElements.map(async linkElement => await linkElement.getAttribute('href'));

作為Typescript和Javascript的初學者,此后似乎是一個愚蠢的問題...對不起:/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM