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


Posted in Javascript onJune 27, 2019

本文实例讲述了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);
})();

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

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

Javascript 相关文章推荐
判断是否安装flash player及当前版本的JS代码
Aug 08 Javascript
IE下window.onresize 多次调用与死循环bug处理方法介绍
Nov 12 Javascript
Bootstrap轮播插件中图片变形的终极解决方案 使用jqthumb.js
Jul 10 Javascript
jquery判断对象是否为空并遍历对象的简单实例
Jul 26 Javascript
AngularJS 简单应用实例
Jul 28 Javascript
Bootstrap基本模板的使用和理解1
Dec 14 Javascript
详解js中==与===的区别
Jan 08 Javascript
JavaScript Base64 作为文件上传的实例代码解析
Feb 14 Javascript
vue.js实例todoList项目
Jul 07 Javascript
JS中call和apply函数用法实例分析
Jun 20 Javascript
JS原生瀑布流效果实现
Apr 26 Javascript
JavaScript闭包相关知识解析
Oct 19 Javascript
JS前端知识点offset,scroll,client,冒泡,事件对象的应用整理总结
Jun 27 #Javascript
ES6 let和const定义变量与常量的应用实例分析
Jun 27 #Javascript
vue响应式更新机制及不使用框架实现简单的数据双向绑定问题
Jun 27 #Javascript
微信小程序实现form表单本地储存数据
Jun 27 #Javascript
ES6 class的应用实例分析
Jun 27 #Javascript
ES6 Promise对象的应用实例分析
Jun 27 #Javascript
使用Vue 实现滑动验证码功能
Jun 27 #Javascript
You might like
ThinkPHP的URL重写问题
2014/06/22 PHP
跟我学Laravel之视图 &amp; Response
2014/10/15 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
一个简单的php MVC留言本实例代码(必看篇)
2016/09/22 PHP
PHP实现单条sql执行多个数据的insert语句方法
2019/10/11 PHP
JavaScript词法作用域与调用对象深入理解
2012/11/29 Javascript
JQuery实现绚丽的横向下拉菜单
2013/12/19 Javascript
js生成动态表格并为每个单元格添加单击事件的方法
2014/04/14 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
JavaScript正则表达式匹配 div  style标签
2016/03/15 Javascript
全面解析多种Bootstrap图片轮播效果
2016/05/27 Javascript
浅谈javascript运算符——条件,逗号,赋值,()和void运算符
2016/07/15 Javascript
Javascript基础学习笔记(菜鸟必看篇)
2016/07/22 Javascript
PHP+jquery+ajax实现分页
2016/12/09 Javascript
Bootstrap table使用方法详细介绍
2016/12/09 Javascript
vue.js学习之递归组件
2016/12/13 Javascript
jQuery插件echarts去掉垂直网格线用法示例
2017/03/03 Javascript
详谈for循环里面的break和continue语句
2017/07/20 Javascript
详解vue-cli 3.0 build包太大导致首屏过长的解决方案
2018/11/10 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
2019/04/25 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
微信小程序图片右边加两行文字的代码
2020/04/23 Javascript
JS实现图片幻灯片效果代码实例
2020/05/21 Javascript
js 获取扫码枪输入数据的方法
2020/06/10 Javascript
[03:42]2018完美盛典-《加冕》
2018/12/16 DOTA
python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
2019/08/28 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
Python Dict找出value大于某值或key大于某值的所有项方式
2020/06/05 Python
python开根号实例讲解
2020/08/30 Python
夏威夷航空官网:Hawaiian Airlines
2016/09/11 全球购物
酒店工作职员求职简历的自我评价
2013/10/23 职场文书
刘胡兰的英雄事迹材料
2014/02/11 职场文书
上班迟到检讨书300字
2014/10/18 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
Nginx虚拟主机的搭建的实现步骤
2022/01/18 Servers
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
2023/05/07 HTML / CSS