本文翻译youtube上的up主kudvenkat的javascript tutorial播放单

源地址在此:

https://www.youtube.com/watch?v=PMsVM7rjupU&list=PL6n9fhu94yhUA99nOsJkKXBqokT3MBK0b

filter()方法会制造一个新的数列,然后根据callback函数的条件来填充这个数列

格式:array.filter(callbackFunction[,thisArg])

参数

callbackFunction -- 必须,数列的每一个元素都会call这个函数.如果函数返回真,则元素保留,反之则被过滤掉

thisArg -- 非必须,一个可以在callback函数中被this关键字refer的对象

filter方法对于数列中的每一个元素都会呼出这个callback函数.如果对于每一个元素,callback函数都返回假,那么新数列的长度则为0

callback函数格式

function callbackFunction(value, index, array)

callback函数的参数

value -- 数列中的元素的值

index -- 数列中元素的index位置

array -- 包含元素的源数列对象

例子1: 从myArray中只获取所有的偶数

// Callback function
function IsEven(value, index, array)
{
if (value % 2 == 0)
{
return true;
}
else
{
return false;
}
} // Source array
var myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Pass the callback function as argument to the filter method
var result = myArray.filter(IsEven); document.write(result);

Output : 2,4,6,8,10

例子2: 在例子1中我们先定义了一个callback函数,然后将其作为filter方法的参数.在以下的例子中,我们则将callback函数在filler方法中作为匿名函数造出来

// Source array
var myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // callback function created directly in the filter method as anonymous function
var result = myArray.filter(function (v, i, a) { return v % 2 == 0 }); document.write(result);

Output : 2,4,6,8,10

例子3:将Javascript数列中的重复项移除

var myArray = ["Sam", "Mark", "Tim", "Sam"];

var uniqueItems = myArray.filter(function (v, i, a) { return a.indexOf(v) == i });

document.write(uniqueItems);

Output : Sam,Mark,Tim

[译]Javascript数列filter方法的更多相关文章

  1. JavaScript Array filter() 方法

    JavaScript Array filter() 方法 var ages = [32, 33, 16, 40]; function checkAdult(age) { return age > ...

  2. javascript 中 filter 方法

    filter 方法用来迭代一个数组,并且按给出的条件过滤出符合的元素. filter 方法传入一个回调函数,这个回调函数会携带一个参数,参数为当前迭代的项(我们叫它 val ). 回调函数返回 tru ...

  3. javascript中filter方法

    array1.filter(callbackfn[, thisArg]) 參數   參數 定義 array1 必要項. 陣列物件. callbackfn 必要項. 最多接受三個引數的函式. filte ...

  4. [译]Javascript数列的push和pop方法

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  5. JavaScript的filter方法

    var ages = [32, 33, 16, 40]; function checkAdult(age) { return age >= 18; } function myFunction() ...

  6. [译]Javascript中的数列

    本文翻译youtube上的up主kudvenkat的javascript tutorial播放单 源地址在此: https://www.youtube.com/watch?v=PMsVM7rjupU& ...

  7. JavaScript Array数组方法详解

    Array类型是ECMAScript中最常用的引用类型.ECMAScript中的数据与其它大多数语言中的数组有着相当大的区别.虽然ECMAScript中的数据与其它语言中的数组一样都是数据的有序列表, ...

  8. 数组map()方法和filter()方法及字符串startsWith(anotherString)和endsWith(anotherString)方法

    map方法的作用不难理解,"映射"嘛,也就是原数组被"映射"成对应新数组 var newArr = arr.map(function() {});例子: var ...

  9. JavaScript 数组(Array)方法汇总

    数组(Array)常用方法; 数组常用的方法:concat(),every(), filter(), forEach(),  indexOf(), join(), lastIndexOf(), map ...

随机推荐

  1. python模块导入的问题

    从模块导入函数时,通常可以使用 import somemodule 或者 from somemodule import somefunction 或者 from somemodule import s ...

  2. QtCreator开启-O编译优化的方式

    首先,编译优化必须是在Release模式下进行,保证程序没有任何bug的条件下进行执行.编译优化能极大提升程序的运行效率,级别越高速度越快,但是对代码健壮性要求也越高! 选择编译release模式,在 ...

  3. Java中throw和throws的区别【转】

    系统自动抛出的异常所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行. 语句抛出的异常 用 ...

  4. who命令参数及用法详解(linux查看在线用户命令)

    功能说明:显示目前登入系统的用户信息.  语 法:who [-Himqsw][--help][--version][am i][记录文件]  补充说明:执行这项指令可得知目前有那些用户登入系统,单独执 ...

  5. 第十四届华中科技大学程序设计竞赛决赛同步赛 F Beautiful Land(01背包,背包体积超大时)

    链接:https://www.nowcoder.com/acm/contest/119/F来源:牛客网 Beautiful Land 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 1 ...

  6. Oracle AWR,SQL_TRACE,10046,DBMS_PROFILER 等使用

    Oracle AWR,SQL_TRACE,10046,DBMS_PROFILER 等使用 1 AWR 工具的使用及优化 1 10g默认安装 select * from dba_hist_wr_cont ...

  7. GPT 安装win10

    BIOS EFI ACHI 安装win10 GPT 分区表 支持FAT,FAT32 gpt 理论支持非常多的分区,容量也支持非常大. MBR分区表 支持FAT,FAT32, NTFS 但是分区数量有限 ...

  8. 【转】ruby中nil?, empty? and blank?的选择

    In Ruby, you check with nil? if an object is nil:article = nil article.nil? # => true empty? chec ...

  9. C Primer Plus学习笔记(八)- 函数

    函数简介 函数(function)是完成特定任务的独立程序代码单元 使用函数可以省去编写重复代码的苦差,函数能让程序更加模块化,提高程序代码的可读性,更方便后期修改.完善 #include <s ...

  10. hibernate学习笔记(1)基础配置与jar包

    下载hibernate基础jar包,并解压hibernate-core-4.2.4.final 在myeclipse中添加hibernate的dtd支持: location为D:\学习\imooc-h ...