如何找出与JavaScript中特定条件匹配的所有元素?
Javascript 有许多框架,其中 underscore.js是其中之一。它提供了许多函数,其中_.where()是用于根据特定条件查找元素的函数。
此方法将根据元素是否通过条件来显示它们。假设如果我们通过一个条件,即所提供的数组中有多少人的薪水等于15000,则 _.where()方法将仔细检查每个元素是否通过条件。如果任何元素通过条件,则该特定元素将显示为输出。
语法
_.where( list, testCondition);
它接受用于检查的数组和用于评估元素的检查条件。通过条件的元素将显示为输出。
示例1
在以下示例中,传递了有关年龄的条件,并根据该条件显示输出。
<html>
<body>
<script
src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/0.10.0/lodash.min.js"></script>
</head>
<body>
<script>
var people = [
{"name": "Dhoni", "age": 38},
{"name": "kohli", "age": 22},
{"name": "Rohit", "age": 28},
{"name": "dhawan", "age": 28}
]
document.write(JSON.stringify(_.where(people, {age: 28})));
</script>
</body>
</html>输出结果
[{"name":"akansha","age":28},{"name":"preeti","age":28}]示例2
在下面的示例中,通过传递关于其ID的条件来检查数组“学生”,并显示结果,如输出所示。
<html>
<body>
<script
src="//cdnjs.cloudflare.com/ajax/libs/lodash.js/0.10.0/lodash.min.js"></script>
</head>
<body>
<script>
var students = [
{"name": "Ravi", "id": 45},
{"name": "Surya", "id": 45},
{"name": "Chandra", "id": 47},
{"name": "guru", "id": 40}
]
document.write(JSON.stringify(_.where(students, {id:45})));
</script>
</body>
</html>输出结果
[{"name":"Ravi","id":45},{"name":"Surya","id":45}]