В Typescript я часто использую этот шаблон:
class Vegetable {
constructor(public id: number, public name: string) {
}
}
var vegetable_array = new Array<Vegetable>();
vegetable_array.push(new Vegetable(1, "Carrot"));
vegetable_array.push(new Vegetable(2, "Bean"));
vegetable_array.push(new Vegetable(3, "Peas"));
var id = 1;
var collection = vegetable_array.filter( xvegetable => {
return xvegetable.id == id;
});
var item = collection.length < 1 ? null : collection[0];
console.info( item.name );
Я думаю о создании расширения JavaScript, похожий на LINQ SingleOrDefault
метод, при котором он возвращает null
, если он не в массиве:
var item = vegetable.singleOrDefault( xvegetable => {
return xvegetable.id == id});
У меня вопрос, есть ли другой способ добиться этого без создания пользовательского интерфейса?