JavaScript

超轻量级php框架startmvc

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

更新时间:2020-09-02 13:18:01 作者:startmvc
本文实例讲述了JS前端知识点运算符优先级,URL编码与解码,String,Math,arguments操作。分享

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

Js 中的运算符优先级

优先级依次降低

  • ()
  • !、-、++、–
  • *、/、%
  • +、-
  • <、<=、<、>=
  • ==、!=、===、!==、
  • &&
  • ||
  • ?:
  • =、+=、-=、*=、/=、%=

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);
})();

JS 运算符优先级 URL编码与解码 String Math arguments操作