zoukankan      html  css  js  c++  java
  • Js一些小技巧

    1.生成随机ID

    Math.random().toString(16).substring(2);
    Math.random().toString(36).substring(2);

      解释:

         Math.random()输出0到1(包括0,不包含1)的随机数。
         toString(16)将随机数转换为16进制的字符串。
         substring(2)截取字符串,因为随机数大于等于0小于1,前两位是“0.”,substring(2)从第三位开始截取到最后。

    2.正则去空格

    1去掉左边空格
    
    name.replace(/^s*/g,”“);
    
    2去掉右边空格
    
    name.replace(/s*$/g,”“);
    
    3去掉前后空格
    
    smSmsModelName.replace(/(^s*)|(s*$)/g,”“);
    说明:
    看到分为两部分被“|”:表示前后两个子模可以选择 ,个人人为可以理解为 或 的意思;
    
    (^s*):^ 上面已经显示了属于元字符中的一个 代表字符串需以模式起始。
    
    s 匹配空格(空格包括空白字符、tab、换行符、return/enter)
    
    4去掉所有的空格
    
    name.replace(/s+/g,”“);

    3.本地时间

    <body onload="setInterval(()=>document.body.innerHTML=new Date().toLocaleString().slice(10,19))"></body>

    4.数组混淆  

    // 随机更改数组元素顺序,混淆数组
    (arr) => arr.slice().sort(() => Math.random() - 0.5)
    /* 
    let a = (arr) => arr.slice().sort(() => Math.random() - 0.5)
    let b = a([1,2,3,4,5])
    console.log(b)
    */

    5.创建特定大小的数组

    [...Array(3).keys()]
    // [0, 1, 2]

    7.数组方法splice返回的是一个数组,该数组是当前的删除项,并不是原数组变更后的数组 

    8.打印出当前网页使用了多少种HTML元素

    const fn = () => {
      return [...new Set([...document.querySelectorAll('*')].map(el => el.tagName))].length;
    }
  • 相关阅读:
    ubuntu下安装VMware tools
    ubuntu 输入su提示认证失败的解决方法
    Squishy Bird 压扁小鸟
    js 毫秒转日期(yy-MM-dd hh:mm:ss)
    js--使用构造器函数来新建对象及操作
    css中table样式
    js 字符串截取
    JavaScript中Math--random()/floor()/round()/ceil()
    canvas draw a image
    html5 canvas simple drawing
  • 原文地址:https://www.cnblogs.com/yxkNotes/p/11906016.html
Copyright © 2011-2022 走看看