WEB开发网
开发学院网页设计JavaScript Dojo QuickStart 快速入门教程 (5) 使用数组 阅读

Dojo QuickStart 快速入门教程 (5) 使用数组

 2010-09-14 13:47:00 来源:WEB开发网   
核心提示: 3、枚举并返回数组dojo.map(array,callback)或者array.map(callback)功能:用 callback 函数处理 array 中的每一个元素,并存进另外一个 array 中返回值:返回处理后的得到的 array例子:现有一个数组 [200, 300, 150

3、枚举并返回数组

dojo.map(array,callback)

或者

array.map(callback)

功能:用 callback 函数处理 array 中的每一个元素,并存进另外一个 array 中

返回值:返回处理后的得到的 array

例子:现有一个数组 [200, 300, 1500, 4500],将它每个元素增加10%

function test_map(){
    var arr = [200, 300, 1500, 4500];
    var afterMap = dojo.map(arr, function(item){
        return item+(item/100)*10;
    });

    dojo.forEach(afterMap, function(item, i){
        var li = dojo.doc.createElement("li");
        li.innerHTML = i+1+". New: "+item;
        dojo.byId("result_map").appendChild(li);
    });
}

4、条件过滤

dojo.filter(arr,callback)

功能:用 callback 函数处理 array 中的每一个元素,将符合条件的元素存进返回数组中,并返回

返回值:数组

例子,把下面数组中 price 大于 30 的元素找出来

[ {price:10,name:"苹果"}, {price:20,name:"肉"}, {price:30,name:"油"}, {price:40,name:"汽车"}, {price:70,name:"杭州"}]

function test_filter(){
    var arr = [
        {price:10,name:"苹果"},
        {price:20,name:"肉"},
        {price:30,name:"油"},
        {price:40,name:"汽车"},
        {price:70,name:"杭州"},
    ];
    var filteredArr = dojo.filter(arr, function(item){
        return (item.price>30);
    });

    dojo.forEach(filteredArr, function(item, i){
        var li = dojo.doc.createElement("li");
        li.innerHTML = i+1+". "+item.name;
        dojo.byId("result_filter").appendChild(li);
    });
}

Tags:Dojo QuickStart 快速

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接