В Typcript я часто использую этот шаблон.LINQ SingleOrDefault в машинописном тексте
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, где он возвращает нулевое значение, если это не в массиве.
var item = vegetable.singleOrDefault(xvegetable => {
return xvegetable.id == id});
Вопрос в том, есть ли другой способ достичь этого без создания пользовательского интерфейса. ТИА.
Есть определенный импульс в этом направлении. См. Https://linqjs.codeplex.com/ и http://lord-saumagen.github.io/TS – hlo