• 常用的JS代码,判断JS类型


    1.用于判断当前变量的值是否为 null 或 undefined 类型。

    const isNil = val => val === undefined || val === null;
    
    isNil(null); // true
    isNil(undefined); // true

    2.用于判断当前变量的值是否为 null 类型。

    const isNull = val => val === null;
    
    isNull(null); // true

    3.用于检查当前的值是否为数字类型。

    function isNumber(n) {
        return !isNaN(parseFloat(n)) && isFinite(n);
    }
    
    isNumber('1'); // false
    isNumber(1); // true

    4.用于判断参数的值是否是对象,这里运用了Object 构造函数创建一个对象包装器,如果是对象类型,将会原值返回。

    const isObject = obj => obj === Object(obj);
    
    isObject([1, 2, 3, 4]); // true
    isObject([]); // true
    isObject(['Hello!']); // true
    isObject({ a: 1 }); // true
    isObject({}); // true
    isObject(true); // false

    5.用于检查参数的值是否为null以及类型是否为对象。

    const isObjectLike = val => val !== null && typeof val === 'object';
    
    isObjectLike({}); // true
    isObjectLike([1, 2, 3]); // true
    isObjectLike(x => x); // false
    isObjectLike(null); // false

    6.此代码段检查参数的值是否是由Object构造函数创建的对象。

    const isPlainObject = val => !!val && typeof val === 'object' && val.constructor === Object;
    
    isPlainObject({ a: 1 }); // true
    isPlainObject(new Map()); // false

    7.用于检查当前的值是否为字符串类型。

    const isString = val => typeof val === 'string';
    
    isString('10'); // true

    8.用于判断参数的值是否是 Symbol 类型。

    const isSymbol = val => typeof val === 'symbol';
    
    isSymbol(Symbol('x')); // true

    9.用于判断参数的类型是否是 Undefined 类型。

    const isUndefined = val => val === undefined;
    
    isUndefined(undefined); // true

    10.用于判断给定的字符串是否是 JSON 字符串。

    const isValidJSON = str => {
      try {
        JSON.parse(str);
        return true;
      } catch (e) {
        return false;
      }
    };
    
    isValidJSON('{"name":"Adam","age":20}'); // true
    isValidJSON('{"name":"Adam",age:"20"}'); // false
    isValidJSON(null); // true

    记录来源于:127个常用的JS代码片段,每段代码花30秒就能看懂

     

  • 相关阅读:
    bzoj3675 [Apio2014]序列分割
    bzoj4010 [HNOI2015]菜肴制作
    bzoj4011 [HNOI2015]落忆枫音
    bzoj100题
    JSP—内置对象
    集合框架—常用的map集合
    集合框架—HashMap
    集合框架—代码—用各种集合进行排序
    集合框架—2种排序比较器
    array
  • 原文地址:https://www.cnblogs.com/lwming/p/12612671.html
Copyright © 2020-2023  润新知