js 模拟扩展 c# 的 linq 表达式 分享 linq to js

Posted xiebingshare

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 模拟扩展 c# 的 linq 表达式 分享 linq to js相关的知识,希望对你有一定的参考价值。

hi :如下是  linq to js  的分享   ,如有雷同 纯属巧合

 

(function () {
    Array.prototype.first = function (predicate, def) {

        var l = this.length;

        if (!predicate) return l ? this[0] : def == null ? null : def;

        for (var i = 0; i < l; i++)

            if (predicate(this[i], i, this))

                return this[i];

        return def == null ? null : def;

    };
    Array.prototype.where = Array.prototype.filter || function (predicate, context) {

        context = context || window;

        var arr = [];

        var l = this.length;

        for (var i = 0; i < l; i++)

            if (predicate.call(context, this[i], i, this) === true) arr.push(this[i]);

        return arr;

    };
    Array.prototype.select = Array.prototype.map || function (selector, context) {

        context = context || window;

        var arr = [];

        var l = this.length;

        for (var i = 0; i < l; i++)

            arr.push(selector.call(context, this[i], i, this));

        return arr;

    };
})();

使用方法:list.first(function (t) { return t.Value.trim() == city.trim(); });

  



以上是关于js 模拟扩展 c# 的 linq 表达式 分享 linq to js的主要内容,如果未能解决你的问题,请参考以下文章

LINQ查询表达式基础

编写高质量代码改善C#程序的157个建议——建议27:在查询中使用Lambda表达式

LINQ 查询表达式(C# 编程指南)

JS系列——Linq to js使用小结

C#将字典的LINQ查询重构为单个lambda表达式[关闭]

C# LINQ(10)