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 相关文章推荐
为jQuery.Treeview添加右键菜单的实现代码
Oct 22 Javascript
JQuery入门——事件切换之toggle()方法应用介绍
Feb 05 Javascript
js判断设备是否为PC并调整图片大小
Feb 12 Javascript
js去除输入框中所有的空格和禁止输入空格的方法
Jun 09 Javascript
jQuery实现选项联动轮播效果【附实例】
Apr 19 Javascript
js实现纯前端的图片预览
Apr 27 Javascript
js实现文字超出部分用省略号代替实例代码
Sep 01 Javascript
Javascript 制作图形验证码实例详解
Dec 22 Javascript
AngularJS表格添加序号的方法
Mar 03 Javascript
vue2里面ref的具体使用方法
Oct 27 Javascript
vue路由对不同界面进行传参及跳转的总结
Apr 20 Javascript
vue-quill-editor的使用及个性化定制操作
Aug 04 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
PHP htmlspecialchars()函数用法与实例讲解
2019/03/08 PHP
Mootools 1.2教程 类(一)
2009/09/15 Javascript
js弹窗代码 可以指定弹出间隔
2010/07/03 Javascript
js获取指定日期前后的日期代码
2013/08/20 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
EasyUI折叠表格层次显示detailview详解及实例
2016/12/28 Javascript
jQuery Validate 相关参数及常用的自定义验证规则
2017/03/06 Javascript
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
nodejs调取微信收货地址的方法
2017/12/20 NodeJs
用element的upload组件实现多图片上传和压缩的示例代码
2019/02/12 Javascript
vue draggable resizable 实现可拖拽缩放的组件功能
2019/07/15 Javascript
kNN算法python实现和简单数字识别的方法
2014/11/18 Python
Python反转序列的方法实例分析
2018/03/21 Python
python smtplib模块自动收发邮件功能(一)
2018/05/22 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
使用python将图片按标签分入不同文件夹的方法
2018/12/08 Python
python使用PIL实现多张图片垂直合并
2019/01/15 Python
详解python中sort排序使用
2019/03/23 Python
在tensorflow中实现去除不足一个batch的数据
2020/01/20 Python
Python如何使用内置库matplotlib绘制折线图
2020/02/24 Python
python递归调用中的坑:打印有值, 返回却None
2020/03/16 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
2020/06/01 Python
Pyside2中嵌入Matplotlib的绘图的实现
2021/02/22 Python
让IE支持HTML5的方法
2012/12/11 HTML / CSS
Joules官网:女士、男士和儿童服装和鞋类
2018/10/23 全球购物
我的applet原先好好的, 一放到web server就会有问题,为什么?
2016/05/10 面试题
作风建设演讲稿
2014/05/23 职场文书
办公室主任个人对照检查材料思想汇报
2014/10/11 职场文书
英文版辞职信
2015/02/28 职场文书
公司表扬稿范文
2015/05/05 职场文书
2015年度绩效考核工作总结
2015/05/27 职场文书
python glom模块的使用简介
2021/04/13 Python
JavaScript高级程序设计之基本引用类型
2021/11/17 Javascript