我有这样一个数组:
var movies = [
{ Name: "The Red Violin", ReleaseYear: "1998", Director: "François Girard" },
{ Name: "Eyes Wide Shut", ReleaseYear: "1999", Director: "Stanley Kubrick" },
{ Name: "The Inheritance", ReleaseYear: "1976", Director: "Mauro Bolognini" }
];
Run Code Online (Sandbox Code Playgroud)
我想找到1999年发行的电影的位置.
应该回来1.
什么是最简单的方法?
谢谢.
您将不得不遍历每个值并检查.
for(var i = 0; i < movies.length; i++) {
if (movies[i].ReleaseYear === "1999") {
// i is the index
}
}
Run Code Online (Sandbox Code Playgroud)
由于JavaScript最近添加了对大多数常见集合操作的支持,这显然是对集合的过滤操作,您也可以这样做:
var moviesReleasedIn1999 = movies.filter(function(movie) {
return movie.ReleaseYear == "1999";
});
Run Code Online (Sandbox Code Playgroud)
假设您对索引不感兴趣,但对实际数据对象不感兴趣.绝大多数人都不是:)
.filter并非所有浏览器都支持,但您可以自己将其添加到代码库中:https:
//developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/filter#Compatibility
| 归档时间: |
|
| 查看次数: |
918 次 |
| 最近记录: |