JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作整理总结

(编辑:jimmy 日期: 2024/11/18 浏览:2)

本文实例讲述了JS前端知识点 运算符优先级,URL编码与解码,String,Math,arguments操作。分享给大家供大家参考,具体如下:

Js 中的运算符优先级

优先级依次降低

  • ()
  • !、-、++、–
  • *、/、%
  • +、-
  • <、<=、<、>=
  • ==、!=、===、!==、
  • &&
  • ||
  • "font-size: medium">URL 编码和解码

    • encodeURIComponent()
    • decodeURIComponent()
    • encodeURI()
    • decodeURI()
    • escape()
    • unescape()
    • 区别

    字符串操作常用API

    • toString() 转换成字符串
    • charAt(index) 获取索引位置字符
    • charCodeAt(index) 获取索引位置字符在Unicode字符集中的编码值
    • indexOf(index) 从前向后获取索引字符串位置 ,找不到返回 -1
    • lastIndexOf(index) 从后向前获取索引字符串位置 ,找不到返回 -1
    • concat 连接字符,返回新组成的字符
    • slice(截取的位置,截取终点) 特殊说明: ① 左闭右开 ② slice(2) 截取从索引号为2的到最后 ③ slice(-2) 从右边开始往左边取2个
    • substr(截取的位置, 截取的长度) 特殊说明: ① str.substr(1,2) 表示从索引位置为1的地方取2个 ② str.substr(-1) 从右边开始往左边取1个, 存在兼容问题:ie6,7,8返回所有字符串,不建议使用负值
    • substring (更智能版的slice) 特殊说明: ① substring(5,2)会被自动转换成substring(2,5) ② substring(-number) 返回全部字符串
    • toUpperCase() 转换为大写字母
    • toLowerCase() 转换为小写字母

    关于浮点数中的保留几位小数的问题

    • toFixed
    var num1 = 5.6789;
    console.log(num1.toFixed(2)) // 5.68 注意四舍五入
    var num2 = 1.234;
    console.log(num2.toFixed(2)) // 1.23
    
    

    Math api

    var max = Math.max(1,2,3,6,4,5); // max 最大值为 6
    var max1 = Math.max(); // max1 为 -Infinity , 无参数的情况
    var min = Math.min(1,2,6,5,9,3); // min 最小值位 1
    var min1 = Math.min(); // min1 为 Infinity , 无参数的情况
    
    

    注意参数:里面可以是字符串型的数字表示,但不能是undefined, null, NaN

    一个简单的小递归程序

    var num = 0;
    (function me() {
     if(num > 4) {
      return;
     }
     st = setTimeout(function() {
      clearTimeout(st);
      console.log(++ num);
      me();
     },500);
    })();
    
    

    关于 arguments.callee

    arguments.callee 返回正被执行的 Function 对象,在使用函数递归调用时推荐使用arguments.callee代替函数名本身,不过在严格模式下不建议使用

    上述递归调用可替换为:

    var num = 0;
    (function () {
     if(num > 4) {
      return;
     }
     var callee = arguments.callee;
     st = setTimeout(function() {
      clearTimeout(st);
      console.log(++ num);
      callee();
     }, 500);
    })();
    
    

    更多关于JavaScript相关内容还可查看本站专题:《JavaScript字符与字符串操作技巧总结》、《JavaScript数组操作技巧总结》、《JavaScript遍历算法与技巧总结》、《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》

    希望本文所述对大家JavaScript程序设计有所帮助。