<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Js 数组filter()、map()、some()、every()、forEach()、lastIndexOf()、indexOf()实例</title>
    <script src="JS/jquery-easyui-1.5/jquery.min.js"></script>
    <script>
        //返回大于等于10
        function fiter(element, index, array) {
            return (element >= 10);
        }
        //筛选数据
        var arr = [12, 5, 8, 130, 44, 10].filter(fiter);
        console.log(arr)

        //将所有的数组元素转换为大写:
        var strings = ["I", "Love", "You"];
        function UpperCase(v) {
            return v.toUpperCase();
        }
        var uppers = strings.map(UpperCase);
        console.log(uppers)

        /*
            some()
            对数组中的每个元素都执行一次指定的函数(callback),直到此函数返回 true,如果发现这个元素,some 将返回 true,
            如果回调函数对每个元素执行后都返回 false ,some 将返回 false。
            它只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略。
        */
        console.log([2, 5, 8, 1, 4].some(fiter));  //false
        console.log([12, 5, 8, 1, 4].some(fiter)); //true

        /*
            every()
            对数组中的每个元素都执行一次指定的函数(callback),直到此函数返回 false,如果发现这个元素,every 将返回 false,
            如果回调函数对每个元素执行后都返回 true ,every 将返回 true。
            它只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略        
        */
        console.log([12, 5, 8, 130, 44].every(fiter));
        console.log([12, 54, 18, 130, 44].every(fiter));

        function printE(element, index, array) {
            console.log("[" + index + "] is " + element);
        }
        [1, 2, 3, 4, 5].forEach(printE);

        var array = [2, 5, 9, 2];
        var index = array.lastIndexOf(2);
        console.log(index);  //3

        var index1 = array.indexOf(2);
        console.log(index1);  //0
    </script>
</head>
<body>

    <form id="form1" runat="server">
        <div>
        </div>
    </form>
</body>
</html>


本文转载:CSDN博客