Javascript 基于关键字查询Typescript数组集合

Javascript 基于关键字查询Typescript数组集合,javascript,linq,collections,typescript,Javascript,Linq,Collections,Typescript,我是打字新手。我在typescript中有一个类型数组。基本上包含集合元素 "ID": "669a8156-528c-43ba-8ed0-d07874534d1c", "Name": "Temple", "DeviceCount": "0", "SiteCount": "0" …等等 如果我有ID i、 例如,类似于LINQ类型的表达式 var result = array.Where(item => item.ID == ID); 您可以使用JavaScriptArray#fil

我是打字新手。我在typescript中有一个类型数组。基本上包含集合元素

"ID": "669a8156-528c-43ba-8ed0-d07874534d1c",
"Name": "Temple",
"DeviceCount": "0",
"SiteCount": "0"


…等等

如果我有ID

i、 例如,类似于LINQ类型的表达式

var result = array.Where(item => item.ID == ID);

您可以使用JavaScript
Array#filter
方法进行此操作,该方法返回一个匹配数组,非常类似于您的LINQ代码:

array.filter(item => item.ID === ID)[0].name;
您也可以使用
Array#find
,但这并没有很好的浏览器支持,因此您可能需要一个用于Opera和Internet Explorer的polyfill:

array.find(item => item.ID === ID).name;

阅读相关文档:

是TypeScript的表示方式,与JSYes相同。是的,这段代码将在TypeScript和现代JavaScript中工作,除了TypeScript为您编译箭头函数
x=>y
,否则Safari和其他一些浏览器将不支持它。不幸的是,它对我不起作用。尽管集合中有特定的条目。
array.find(item => item.ID === ID).name;