Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript(jquery)功能类似于linq的Where()_Javascript_Jquery_Linq - Fatal编程技术网

Javascript(jquery)功能类似于linq的Where()

Javascript(jquery)功能类似于linq的Where(),javascript,jquery,linq,Javascript,Jquery,Linq,是否可以在jquery中执行类似于此C示例的操作: LoopModel = Model.Fields .Where(p => p.Key < 1000 && !Model.FieldHandled.ContainsKey(p.Key) && !FieldsValid.ContainsKey(p.Key)) .OrderBy(p => p.Value.SortOrder

是否可以在jquery中执行类似于此C示例的操作:

LoopModel = Model.Fields
                    .Where(p => p.Key < 1000 && !Model.FieldHandled.ContainsKey(p.Key) && !FieldsValid.ContainsKey(p.Key))
                    .OrderBy(p => p.Value.SortOrder).ThenBy(p => p.Value.FieldTypeID).ThenBy(p => p.Value.FieldLabel);
所以我希望能够从字段中选择某些字段

谢谢

您可以使用JLinq.js库。它提供与C使用相同的功能。不需要图书馆

以下是链接中的一个示例:

const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];

const result = words.filter(word => word.length > 6);

console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]

我喜欢洛达斯或下划线。它们广泛应用于各种JS库中,目前我认为它们是最具JavaScript风格的解决方案。它们还保证支持传统浏览器,具有许多性能增强。我认为学习它们是值得的


请参见此处的比较:

使用JLinq.js库。它提供的linq函数与C@Akshay谢谢,你能给我一个答案吗?什么是FieldsValid什么是FieldHandled?相反,在c语言中,你可以在js中使用过滤器,而不是orderBy-sortonly用于新浏览器:-IE 9是新浏览器吗?如果你需要支持IE 8,我想这是不合适的,但我认为这不值得,除非你特别针对一个更可能仍在使用IE 8的用户群。一些移动浏览器也不可用这一点:-它在链接底部显示兼容性,并且有一个移动标签。显然,它们都支持,但我无法验证。
const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];

const result = words.filter(word => word.length > 6);

console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]