zoukankan      html  css  js  c++  java
  • underscorejs-contains学习

    2.12 contains

    2.12.1 语法:

    _.contains(list, item, fromIndex, guard)

    2.12.2 说明:

    list集合包含指定的值则返回true,否则返回false

    • list可以为数组,对象,字符串和arguments
    • item是一个参数(contains会处理list中是否包含此参数),可以为数字,字符串
    • fromIndex是一个数字,根据此索引决定list开始检索的位置,可为正值,也可为负值;(负值不是真正的负值,而是list的倒数,下面会详细讲解);若非数字则fromIndex的索引从0开始

    2.12.3 代码示例:

    示例一:contains对list根据item进行检索,包含item则返回true

    var result;
    
    // 数组进行检索
    result = _.contains([1, 2, 3], 2);
    console.log(result) //=> true
    
    // 对象进行检索
    result = _.contains({x: 1, y: 2, z: 3}, 2);
    console.log(result) //=> true
    
    // 字符串进行检索
    result = _.contains('123', "2");
    console.log(result) //=> true
    
    // arguments进行检索
    function abc(){
    	result = _.contains(arguments, 2);
    	console.log(result); //=> true
    }
    abc(1, 2, 3);
    

    示例二:item属性

    var result;
    
    // item为数字
    result = _.contains(['1', 2, '3'], 2);
    console.log(result) //=> true
    
    // item为字符串
    result = _.contains({x: '1', y: '2', z: '3' }, "4");
    console.log(result) //=> false
    
    // item为bool
    result = _.contains([0, false], true);
    console.log(result) //=> false
    

    示例三:fromIndex索引值(可为正值,也可为负值,非number类型则fromIndex默认为0)

    var result;
    
    // item为数字
    result = _.contains([1, 2, 3], 3, 0);
    console.log(result) //=> true
    
    // item为字符串
    result = _.contains([1, 2, 3], 3, "3");
    console.log(result) //=> true
    
    // item为负值
    result = _.contains({x: '1', y: '2', z: '3' }, "3", -1);
    console.log(result) //=> true
    
    result = _.contains({x: '1', y: '2', z: '3' }, "2", -1);
    console.log(result) //=> false 由此可看出当fromIndex为负值的时候,fromIndex是根据list最后一位倒数
    

    2.12.4 contains也可有第四个参数guard;

    示例一:guard为真值的情况fromIndex的索引从0开始;(这个属性官方没有做出明确的说明,只是个人理解,若有更好的建议,可以联系作者)

    var result;
    
    // guard为空,则根据fromIndex索引进行检索
    result = _.contains(['a', 'b', 'c'], 'c', 2);
    console.log(result) //=> true
    
    // guard为true
    result = _.contains(['a', 'b', 'c'], 'c', 3, true);
    console.log(result) //=> true
    
    // guard为false
    result = _.contains(['a', 'b', 'c'], 'c', 3, false);
    console.log(result) //=> false
    
  • 相关阅读:
    arcgis建立拓扑分析(检验矢量图)
    矢量图面层和线层相交得到相交后的线层文件(gis相交)
    关于处理注册表权限无法修改的问题(无法打开主键或注册表项unknown)
    my.cnf配置文件
    keepalived联动mysql
    安装客户端连接软件(zabbix_agentd-filebeat-flume)
    zabbix短信配置说明
    zabbix监控工具添加网络设备Ping
    新买了硬盘,让Linux系统识别硬盘nfs---->改成xfs
    vnc软件使用
  • 原文地址:https://www.cnblogs.com/kyo4311/p/5172031.html
Copyright © 2011-2022 走看看