linq.js的用法

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

linq.js 详细介绍

linq.js 是一个 JavaScript 实现的 LINQ。


主要特性:


实现所有 .NET 4.0 的方法

complete lazy evaluation

full IntelliSense support for VisualStudio

two versions - linq.js and jquery.linq.js (jQuery plugin)

support Windows Script Host

binding for Reactive Extensions for JavaScript(RxJS) and IntelliSense Generator -> see documentation

NuGet install support

示例代码:


var jsonArray = [

    { "user": { "id": 100, "screen_name": "d_linq" }, "text": "to objects" },

    { "user": { "id": 130, "screen_name": "c_bill" }, "text": "g" },

    { "user": { "id": 155, "screen_name": "b_mskk" }, "text": "kabushiki kaisha" },

    { "user": { "id": 301, "screen_name": "a_xbox" }, "text": "halo reach" }

]

// ["b_mskk:kabushiki kaisha", "c_bill:g", "d_linq:to objects"]

var queryResult = Enumerable.From(jsonArray)

    .Where(function (x) { return x.user.id < 200 })

    .OrderBy(function (x) { return x.user.screen_name })

    .Select(function (x) { return x.user.screen_name + ':' + x.text })

    .ToArray();

// shortcut! string lambda selector

var queryResult2 = Enumerable.From(jsonArray)

    .Where("$.user.id < 200")

    .OrderBy("$.user.screen_name")

    .Select("$.user.screen_name + ':' + $.text")

    .ToArray();


/


用途:方便js操作查询json数据。


下载网址:http://jslinq.codeplex.com/


使用方法:只需要引用linq.js即可。


查询方法:


一、where查询


var myList = [

  { Name: "Jim", Age: 20 },

  { Name: "Kate", Age: 21 },

  { Name: "Lilei", Age: 18 },

  { Name: "John", Age: 14 },

  { Name: "LinTao", Age: 25 }

];

var arrRes = Enumerable.From(myList).Where("x=>x.Name=='Jim'").ToArray();

 


二、排序:OrderBy


var myList = [

  { Name: "Jim", Age: 20 },

  { Name: "Kate", Age: 21 },

  { Name: "Lilei", Age: 18 },

  { Name: "John", Age: 14 },

  { Name: "LinTao", Age: 25 }

];

var arrRes = Enumerable.From(myList).OrderBy("x=>x.Age").ToArray();//降序OrderByDescending() 


三、去重:Distinct


var myList = [

  { Name: "Jim", Age: 20 },

  { Name: "Kate", Age: 20 },

  { Name: "Lilei", Age: 20 },

  { Name: "John", Age: 14 },

  { Name: "LinTao", Age: 25 }

];

var arrRes = Enumerable.From(myList).Distinct("x=>x.Age").ToArray(); 


四、遍历:ForEach

var myList = [

  { Name: "Jim", Age: 20 },

  { Name: "Kate", Age: 20 },

  { Name: "Lilei", Age: 20 },

  { Name: "John", Age: 14 },

  { Name: "LinTao", Age: 25 }

   ];

   Enumerable.From(myList).ForEach(function(value, index){

        document.write("值="+value+",索引="+index);  

}); 


五、取唯一对象:First、FirstOrDefault、Last、LastOrDefault、Single、SingleOrDefault

var myList = [

  { Name: "Jim", Age: 20 },

  { Name: "Kate", Age: 20 },

  { Name: "Lilei", Age: 20 },

  { Name: "John", Age: 14 },

  { Name: "LinTao", Age: 25 }

];

var arrRes = Enumerable.From(myList).FirstOrDefault("x=>x.Age>18");

 

六、Skip、Take


Enumerable.Range(1,10).Skip(5)//结果[6,7,8,9,10]

Enumerable.Range(1,10).Take(5)//结果[1,2,3,4,5]

640?wx_fmt=png


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272562.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

标准MD5加密算法

标准MD5加密算法: public class Md5 {public static String getMd5(String s) {char hexDigits[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,a, b, c, d, e, f };try {byte[] strTemp s.getBytes();MessageDigest mdTemp MessageDigest.getInstance("md5");mdTemp.update(s…

程序员大牛们的经典语录

1、很多问题不见得会出在你身上&#xff0c;但你亦需要想法解决问题&#xff0c;否则就会变成你的问题&#xff1b;2、懂得但策略的说不&#xff08;不会这个准备累死吧&#xff0c;程序员&#xff09;&#xff1b;3、我考进事业单位&#xff0c;呵呵&#xff0c;没有传说中的那…

linux下创建的符号链接的权限

今天为shell脚本创建符号链接的时候突然发现的, 创建的符号链接文件的默认权限是 777, 而想要这个脚本可执行, 必须为真正的文件加上 x 权限才可以. 转载于:https://www.cnblogs.com/vanwoos/p/5075656.html

计算机osta试题,OSTA试题库.doc

OSTA试题库章节单选多选填空判断小计计算机基础知识64152020119Windows操作系统4810101583计算机网络应用4810151184Word文档处理51172120109Excel电子表格处理4515152095PowerPoint演示文稿制作5215112098多媒体技术4512102087合计35394102126675计算机基础知识(64152020120)一…

SQLSERVER得到数据库中所有表字段及字段中文描述

如何得到数据库中所有表字段及字段中文描述以下资料,通过csdn的一位师兄从SQL版主那得到:sql中SELECT (case when a.colorder1 then d.name else end) N表名, a.colorder N字段序号, a.name N字段名, (case when COLUMNPROPERTY( a.id,a.name,IsIdentity)1 then √else end)…

SQL Server 2008 R2——使用数字辅助表(master..spt_values)实现用计数字段对记录进行重复显示...

SQL Server 2008 R2——使用数字辅助表&#xff08;master..spt_values&#xff09;实现用计数字段对记录进行重复显示 原文:SQL Server 2008 R2——使用数字辅助表&#xff08;master..spt_values&#xff09;实现用计数字段对记录进行重复显示版权声明 版权声明&#xff1a;原…

编程界十大顶级IDE

IDE是集成开发环境&#xff08;Integrated Development Environment&#xff09;缩写。IDE是一种个编程软件&#xff0c;是集成了程序员语言开发中会需要的一些基本工具、基本环境和其他辅助功能的应用软件。IDE一般包含三个主要组件&#xff1a;源代码编辑器&#xff08;Edito…

就业局培训计算机心得,人社局计算机培训心得体会.doc

人社局计算机培训心得体会人社局计算机培训心得体会篇一&#xff1a;计算机培训心得体会 计算机培训心得体会: 2017年暑假&#xff0c;我参加了骨干教师计算机培训。通过5天培训老师认真的讲解、不厌其烦的答疑&#xff0c;同班学习的各校同行们激情四射的讨论交流&#xff0c;…

有点成熟的短句,最新个性签名

01、从前的人&#xff0c;多认真。02、我不希望你死于一事无成。03、放弃自我&#xff0c;而后成就自我。04、漫漫人生路&#xff0c;我们且行且珍惜&#xff01;05、你我只是初见&#xff0c;我便爱上了你。06、放弃了所有&#xff0c;却等不来你说的承诺。07、不问风&#xf…

iscroll 4.0 滚动(水平和垂直)

1、概述 iscroll 专注于页面滚动js。Iscroll滚动做的挺好,特别是针对手机网页&#xff08;android、iphone&#xff09;正好弥补手动滑屏的遗缺&#xff0c;而今研究一番&#xff0c;把代码贴出来&#xff0c;供大家参考。 2、iscroll使用说明 初始化iScroll wrapperhour//标识…

布法罗博士计算机专业回国人员,四名UW学生参加爱达荷州国家实验室的实习计划...

中游石油和天然气运营正日益面临代价高昂&#xff0c;受到严格审查的事件&#xff0c;这些事件源于老化(泄漏和爆炸)&#xff0c;自然事件(洪水&#xff0c;地震活动和极端天气)以及网络入侵和攻击。解决这些问题的一种方法涉及使用集成的智能监控系统或安全嵌入式智能(SEI)。怀…

学会拐弯,才是人生大智慧(深度好文)

人生天地间&#xff0c;路路九曲弯&#xff0c;从来没有笔直的。水能直至大海&#xff0c;就是因为它巧妙地避开所有障碍&#xff0c;不断拐弯前行。许多聪明人没能走上成功之路&#xff0c;不少是因为撞了南墙不回头。人生路上难免会遇到困难&#xff0c;拐个弯&#xff0c;绕…

excel列显示形式互换(字母与数字)

以office2007为例&#xff1a; excel选项》公式》使用公式下的R1C1引用样式 打上钩显示形式为数字&#xff0c;不打钩显示形式为字母 转载于:https://www.cnblogs.com/lianrenjujishou/p/5079776.html

计算机考试题操作题答案,全国计算机等级考试模拟题一(带操作题及答案)

一、选择题1. 数据的存储结构是指( )。A&#xff0e;数据所占的存储空间 B&#xff0e;数据的逻辑结构在计算机中的存放形式 C&#xff0e;数据在计算机中的顺序存储方式 D&#xff0e;存储在计算机外存中的数据 B。【解析】数据的存储结构&#xff0c;又称为数据的物理结构&am…

数据库的那些事(全是干货)

谈到数据库&#xff0c;大家第一想法就是怎么去优化&#xff0c;怎么让查询操作更快。我认为最好的方式就是从开始数据库设计的时候就要尽量考虑周全。如果不幸是个老项目&#xff0c;就得从优化入手了。接下就从设计和优化谈一下我的一些认识和经验。1&#xff1a;数据库的设计…

Library not loaded: @rpath/libswiftCore.dylib

解决方法&#xff1a; 转载于:https://www.cnblogs.com/penger/p/5080581.html

计算机组成原理课程设计a,计算机组成原理课程设计报告.doc

计算机组成原理课程设计报告.doc (13页)本资源提供全文预览&#xff0c;点击全文预览即可全文预览,如果喜欢文档就下载吧&#xff0c;查找使用更方便哦&#xff01;9.90 积分&#xfeff;计算机组成原理课程设计报告实验项目&#xff1a;1、设计一个具有带进位加法和立即数寻址…

MongoDB学习笔记三:查询

MongoDB中使用find来进行查询。查询就是返回一个集合中文档的子集&#xff0c;子集合的范围从0个文档到整个集合。find的第一个参数决定了要返回哪些文档&#xff0c;其形式也是一个文档&#xff0c;说明要执行的查询细节。空的查询文档{}会匹配集合的全部内容。要是不指定查询…

计算机基础 课程简介,课程简介及计算机基础知识课件.ppt

文档介绍&#xff1a;C语言程序设计主讲教师:王伟****************qtc.课程简介:课程类别:专业计划学时:644学时/周16周课程学分:4课程学****结束后要求达到的要求掌握C语言的基础知识能在TurboC和VC的环境中设计程序实现解决小规模问题上课要求:不迟到、不早退,有事和身体原因…

困扰程序员的30种软件开发问题,你是否时曾相识?

我相信许多web开发人员和软件工程师在编程中都会遇到困难&#xff0c;而事后回想起来&#xff0c;还会觉得很好笑。1、我不知道该删掉还是重写回归曾经写的源代码&#xff0c;总有一种想要重新返工的冲动&#xff0c;逻辑性差&#xff0c;冗余代码多&#xff0c;让人难以理解。…