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(); });

  

原文地址:https://www.cnblogs.com/xiebingshare/p/8674979.html

时间: 2024-09-29 08:51:28

js 模拟扩展 c# 的 linq 表达式 分享 linq to js的相关文章

js便签笔记(10) - 分享:json2.js源码解读笔记

1. 如何理解“json” 首先应该意识到,json是一种数据转换格式,既然是个“格式”,就是个抽象的东西.它不是js对象,也不是字符串,它只是一种格式,一种规定而已. 这个格式规定了如何将js对象转换成字符串.以及转换成怎样的字符串——序列化 —— JSON.stringify 接口: 以及如何将一个有效字符串转换成js对象——反序列化—— JSON.parse 接口: 2. 关于作者 json作者是 道格拉斯.克劳福德 ,是一位js大牛,写过一本<javascript语言精粹>,相信不少朋

C#高级知识点概要(3) - 特性、自动属性、对象集合初始化器、扩展方法、Lambda表达式和Linq查询

1.特性(Attributes) 特性(Attributes),MSDN的定义是:公共语言运行时允许你添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标注,如类型.字段.方法和属性等.Attributes和Microsoft .NET Framework文件的元数据保存在一起,可以用来向运行时描述你的代码,或者在程序运行的时候影响应用程序的行为.例如,在一个方法前标注[Obsolete]特性,则调用该方法时VS则会提示该方法已过期的警告,如下图: 又如,在.Net Re

十五、C# 使用查询表达式的LINQ

使用查询表达式的LINQ 本章介绍了一种新的语法,查询表达式. 1.查询表达式概述 2.特点:投射  筛选  排序   Let  分组 3.作为方法调用 标准查询运算符所实现的查询在功能上与SQL中实现的查询非常相似 C#3.0中添加了一个新的语法:查询表达式. 本章将介绍新的查询表达式语法,并利用这个语法对上一章的许多查询进行表示. 一.查询表达式概述 除了遍历集合中的所有项之外,开发者经常要执行的另一个操作是对集合进行筛选,目的是 最终只需要遍历数量较少的项,或者对集合进行投射,使其中的项变

单篇文章JS模拟分页

废话部分 前两天做了一个前台分页插件,支持ajax读取数据绑定前台 和 url带页码参数跳转两种方式.于是稍加改动,做了一个单篇文章js模拟分页的代码,为什么说是模拟分页呢?因为在服务器响应HTML请求的时候,就已经把全文回传给客户端了,只是我们通过js的方式,把全文隐藏,每次翻页至显示出我们需要的那一部分,而不是真正的按需要去发出HTML请求.所以,在做这个插件的时候去掉了ajax请求的功能及其附带参数,去掉了pageSize参数(恒等于1).这里就不讨论具体的技术细节了和上一篇的分页计算原理

分享:json2.js源代码解读笔记

1. 怎样理解"json" 首先应该意识到,json是一种数据转换格式,既然是个"格式",就是个抽象的东西.它不是js对象,也不是字符串,它仅仅是一种格式,一种规定而已. 这个格式规定了如何将js对象转换成字符串.以及转换成如何的字符串--序列化 -- JSON.stringify 接口: 以及怎样将一个有效字符串转换成js对象--反序列化-- JSON.parse 接口: 2. 关于作者 json作者是 道格拉斯.克劳福德 ,是一位js大牛,写过一本<jav

纯js模拟 radio和checkbox控件

代码待优化,功能实现了,不兼容ie8以上, 相同name的radio可以实现切换的操作, 分享代码,共同学习进步 <!doctype html> <html> <head> <meta charset="utf-8"> <title></title> <style> .radiobox, .checkbox { width: 10px; height: 10px; padding: 2px; borde

查询表达式和LINQ to Objects

查询表达式实际上是由编译器“预处理”为“普通”的C#代码,接着以完全普通的方式进行编译.这种巧妙的发式将查询集合到了语言中,而无须把语义改得乱七八糟 LINQ的介绍 LINQ中的基础概念 降低两种数据模型之间的阻抗失配过程中,遇到的一个问题就是,通常会涉及创建另一个模型来作为桥梁 序列 它通过IEnumerable和IEnumerable<T>接口进行封装 序列和其他集合数据结构最大的区别:当你从序列读取数据的时候,通常不知道还有多少数据项等待读取,或者不能访问任意的数据项——只能是当前这个

分享:json2.js源码解读笔记

1. 如何理解"json" 首先应该意识到,json是一种数据转换格式,既然是个"格式",就是个抽象的东西.它不是js对象,也不是字符串,它只是一种格式,一种规定而已. 这个格式规定了如何将js对象转换成字符串.以及转换成怎样的字符串--序列化 -- JSON.stringify 接口: 以及如何将一个有效字符串转换成js对象--反序列化-- JSON.parse 接口: 2. 关于作者 json作者是 道格拉斯.克劳福德 ,是一位js大牛,写过一本<java

前端怎么用js模拟应用 JSON-通俗易懂

前端怎么用js模拟应用 JSON-通俗易懂,这是转载额 好多孩子 弄不明白复杂的json 格式的应用,下面从基础来看一看JSON,怎么玩, 其实结构理解清了,写起来比html还爽吧! 0.前言 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. 易于人阅读和编写.同时也易于机器解析和生成. 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的