zoukankan      html  css  js  c++  java
  • 几个简单js,普通写法和高逼格写法比较

    1、 取数组中的数据,并对空值设置默认值:

    常规写法:

    let arr = [0, 1, null, '', 'abc'];
    let newArr = [];
    arr.forEach((item, index) => {
        if (!item) {
            newArr[index] = '我原来是空值';
        } else {
            newArr.push(item);
        }
    })

    高逼格写法:

    let arr = [0, 1, null, '', 'abc'];
    let newArr = [];
    arr.forEach((item, index) => {
       newArr.push(item || item = '这种写法是不是很屌?'))
    })

    2、数值取整:

    常规写法:

    let num = 1.12;
    let intNum = parseInt(num);

    高逼格写法:

    let num = 1.12;
    let intNum;
    
    // 写法一:
    intNum = num|0;
    
    // 写法二:
    intNum = ~~num;
    
    // 写法三:
    intNum = num^0;

    // 写法四
    intNum = num << 0;

    3、不用第三个参数交换两个变量的数值:

    常规写法:

    let num1 = 5, num2 = 6;
    num1 = num1 + num2;
    num2 = num1 - num2;
    num1 = num1 - num2;

    // 常规写法二:
    num1 ^= num2;
    num2 ^= num1;
    num1 ^= num2;

    高逼格写法:(逼格高不高?)

    // 写法一:
    let num1 = 5, num2 = 6; num1 = [num2, num2 = num1][0];

    // 写法二:
    [num1, num2] = [num2, num1];

    4、函数参数默认值:

    常规写法:

    function fn(name) {
        if (name) {
            name = name;
        } else {
            name = '我是默认值';
        }
    }
    // 常规写法二:
    function fn(name) {
      name = name || '我是默认值';
      return name;
    }

    高逼格写法:

    function fn(name = '我是默认值') {
        return name;
    }

    以上写法法不仅逼格高,而且代码精简很多,可以说是居司开发必备良方啊!

  • 相关阅读:
    权限管理(java+struts2(自定义标签)实现)--------->全代码演示
    颜色的几个术语和属性
    颜色的不同表达方式
    bootstrap作为mixin库的应用模式
    -webkit-min-device-pixel-ratio: 2是什么意思?
    如何在前端项目中引用bootstrap less?
    js闭包??
    win 运行
    win 2016 添加系统组件注册表,
    C# window服务操作
  • 原文地址:https://www.cnblogs.com/garfieldzhong/p/11518931.html
Copyright © 2011-2022 走看看