zoukankan      html  css  js  c++  java
  • 使用js的一些小技巧

    1、如何优雅的取随机字符窜
    Math.random().toString(16).substring(2) //13位
    Math.random().toString(36).substring(2) //11位


    2、如何优雅的取整
    var a = ~~2.33; //2
    var b = 2.33|0; //2
    var c = 2.33>>0; //2


    3、如何用正则优雅的实现金钱格式化:1234567890 --> 1,234,567,890
    正则写法:reg = /B(?=(d{3})+(?!d))/g


    4、如何最佳让两个整数交换数值
    var a = 1;
    var b = 2;
    a^=b;
    b^=a;
    a^=b;
    //a = 2, b = 1


    5、最短的代码实现数组去重(ES6版本才有的数据结构Set)
    newSet([1,"1",2,1,1,3]);


    6、取数组中的最大值/最小值
    var s = [1,2,3,4,5,6,7,8];
    var max = Math.max.apply(Math,s);
    var max = Math.min.apply(Math,s);


    7、arguments对象
    在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们。例如,在函数 sayHi() 中,第一个参数是 message。用 arguments[0] 也可以访问这个值,即第一个参数的值(第一个参数位于位置 0,第二个参数位于位置 1,依此类推)。
    因此,无需明确命名参数,就可以重写函数:
    function name(){
    return arguments[0];//获取参数的个数用arguments.length
    }
    console.log(name("刘德华")); //输出"刘德华"


    8、Function构造函数接受的参数中,第一个是要传入的参数名,第二个是函数内的代码
    这种方式可以根据传入字符串内容来创建一个函数
    var add = new Function("a","a = a+10;return a;");
    console.log(add(123)); //输出:133

    原:http://www.ylsjwang.com/dianying/26.html

  • 相关阅读:
    在千万级的数据库查询中,如何提高效率?
    SQL的触发器和存储过程详解
    如何提高mysql的安全性?
    mysql的触发器
    HDU5564 Clarke and digits
    JOI2014Final 飞天鼠
    Topcoder10073 SRM418 BarracksEasy
    Topcoder9902 SRM416 DancingCouples
    Topcoder8307 SRM390 SetOfPatterns
    POJ1741 Tree(点分治)
  • 原文地址:https://www.cnblogs.com/sjc9009/p/9175405.html
Copyright © 2011-2022 走看看