zoukankan      html  css  js  c++  java
  • js 重要函数

    1. Array.some

    some() 方法用于检测数组中的元素是否满足指定条件(函数提供)

    如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
    如果没有满足条件的元素,则返回false。

    var ages = [23,44,3]
    if (ages.some(age => age < 10)) {
    console.log('true')
    }

    1.1  array.filter

    array.filter(function(currentValue,index,arr), thisValue)
     [23,44,3].filter(age => age < 10) // [3]

    2.  Object.assign(target, ...sources);

    将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象

    const object1 = {
    a: 1,
    b: 2,
    c: 3
    };
    const object2 = Object.assign({c: 4, d: 5}, object1);

    // object2      {c: 3, d: 5, a: 1, b: 2}

    3. Set、Map

    3.1 Set

    Set.prototype.size:返回Set实例的成员总数。

    s.add(1).add(2).add(2);
    // 注意2被加入了两次
    s.size // 2
    s.has(1) // true
    s.has(2) // true
    s.has(3) // false
    s.delete(2);
    s.has(2) // false

    new Set([1,2,3,1,2])   // Set(3) {1, 2, 3}

    Array.from(new Set([1,2,3,1,2]))  // [1, 2, 3]

    扩展

    let a = new Set([1, 2, 3]);
    let b = new Set([4, 3, 2]);
    // 并集
    let union = new Set([...a, ...b]);// Set {1, 2, 3, 4}
    // 交集
    let intersect = new Set([...a].filter(x => b.has(x)));// set {2, 3}
    // 差集
    let difference = new Set([...a].filter(x => !b.has(x)));// Set {1}
    
    
    // 方法一
    let set = new Set([1, 2, 3]);
    set = new Set([...set].map(val => val * 2));
    // set的值是2, 4, 6
    // 方法二
    let set = new Set([1, 2, 3]);
    set = new Set(Array.from(set, val => val * 2));
    // set的值是2, 4, 6
    View Code

    3.2  Map

    JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是传统上只能用字符串当作键。

    ES6提供了Map数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。

    也就是说,Object结构提供了“字符串—值”的对应,Map结构提供了“值—值”的对应,是一种更完善的Hash结构实现。

    如果你需要“键值对”的数据结构,Map比Object更合适。

    var m = new Map();
    var o = {p: 'Hello World'};
    m.set(o, 'content')
    m.get(o) // "content" 使用set方法,将对象o当作m的一个键,然后又使用get方法读取这个键,
    
    作为构造函数,Map也可以接受一个数组作为参数。该数组的成员是一个个表示键值对的数组。
    var map = new Map([
     ['name', '张三'],
     ['title', 'Author']
    ]);
    map.size // 2
    map.has('name') // true
    map.get('name') // "张三"
    map.has('title') // true
    map.get('title') // "Author"
    
    size属性:返回Map结构的成员总数。
    set(key, value) 方法设置key所对应的键值,然后返回整个Map结构
    ,因此可以采用链式写法。
    get(key)方法读取key对应的键值,如果找不到key,返回undefined。
    has(key)方法返回一个布尔值,表示某个键是否在Map数据结构中
    delete(key)方法删除某个键,返回true。如果删除失败,返回false。
    clear() 方法清除所有成员,没有返回值。
    
    
    keys():返回键名的遍历器。
    values():返回键值的遍历器。
    entries():返回所有成员的遍历器。
    forEach():遍历Map的所有成员。
    
    Map结构转为数组结构,比较快速的方法是结合使用扩展运算符(…)。
    let map = new Map([
     [1, 'one'],
     [2, 'two'],
     [3, 'three'],
    ]);
    [...map.keys()]
    // [1, 2, 3]
    [...map.values()]
    // ['one', 'two', 'three']
    [...map.entries()]
    // [[1,'one'], [2, 'two'], [3, 'three']]
    [...map]
    // [[1,'one'], [2, 'two'], [3, 'three']]
    View Code
  • 相关阅读:
    Tomcat系统架构分析
    org.apache.catalina.util.DefaultAnnotationProcessor cannot be cast to org.apache.AnnotationProcessor
    Tomcat服务器的Web安全的解决方法
    在Tomcat中实现基本的HTTP方式的验证
    在Tomcat中采用基于表单的安全验证
    Tomcat对Struts中的Action进行授权利
    在 Tomcat 上配置虚拟主机
    在Tomcat中配置单点登录
    在Tomcat中配置连接池和数据源
    Tomcat常用操作
  • 原文地址:https://www.cnblogs.com/justSmile2/p/11266344.html
Copyright © 2011-2022 走看看