想学vue了  重启ES6的学习之路

在ES5 中正则的构造器  RegExp  不支持第二个参数

ES6 做了调整   第二个参数表示正则表达式的修饰符(flag)

var regex = new RegExp('xyz', 'i');

  

对字符串调整

  字符串可以使用以下四种正则方法:

    match() 、replace() 、 search() 、 split()

其实没事么神奇的就是样其实 就是让其调用 RegExp 的实例方法

  • String.prototype.match 调用 RegExp.prototype[Symbol.match]
  • String.prototype.replace 调用 RegExp.prototype[Symbol.replace]
  • String.prototype.search 调用 RegExp.prototype[Symbol.search]
  • String.prototype.split 调用 RegExp.prototype[Symbol.split]

new RegExp().flags     获得正则表达式的修饰符

new RegExp().source   获取表达式的正文

习惯ES5的人 其实 .test()     .exec() 方法加上以上差不多 就够用了   不用纠结那么多  ---雨中伞的个人见解  不喜勿喷

还有好多在 ES7 中提出了草案  但是没通过的  对开发来说也是不错的

我只把我感觉在我开发中有用的东西写一下

Number 扩展

  Number.isFinite()   检查数字是有限   只有正常的数字才返回true     无论是Boolean  String  还有无限数(InFinite)  NaN   都返回false

  Number.isNaN()   检查是否是 NaN    只有NaN的时候返回true

以前Number 中也有这两方法  为啥要在这里说明呢?

注意:  之前的这两个方法 都是先调用Number() 方法转换成数字后在进行判断  编程的人需要时刻注意着隐式转换的问题

    而重新实现的这两个方法 只要不是数字类型的就会返回false

  parseInt()  parseFloat()  用法一样 就是把这两个方法转移到Number对象上了 -----据说为了减少全局变量  逐渐模块化

Math对象

Math.trunc()  去除小数点部分  返回整数部分

  Math.sign(num) ;

    •   参数为正数,返回+1;
    •   参数为负数,返回-1;
    •   参数为0,返回0;
    •   参数为-0,返回-0;
    •   其他值,返回NaN。

  Math.cbrt(-2)  方法用于计算一个数的立方根。

//如果没有  也可以自己实现
Math.cbrt = Math.cbrt || function(x) {
var y = Math.pow(Math.abs(x), 1/3);
return x < 0 ? -y : y;
};

  Math.hypot()方法返回所有参数的平方和的平方根。

  Math.fround()方法返回一个数的单精度浮点数形式

ES6还新增了对数的方法

  Math.expm1(x)返回ex - 1,即Math.exp(x) - 1

  Math.log1p(x)方法返回1 + x的自然对数,即Math.log(1 + x)。如果x小于-1,返回NaN

  Math.log10(x)返回以10为底的x的对数。如果x小于0,则返回NaN。

  Math.log2(x)返回以2为底的x的对数。如果x小于0,则返回NaN。

三角函数方法

  ES6新增了6个三角函数方法。

    •   Math.sinh(x) 返回x的双曲正弦(hyperbolic sine)
    •   Math.cosh(x) 返回x的双曲余弦(hyperbolic cosine)
    •   Math.tanh(x) 返回x的双曲正切(hyperbolic tangent)
    •   Math.asinh(x) 返回x的反双曲正弦(inverse hyperbolic sine)
    •   Math.acosh(x) 返回x的反双曲余弦(inverse hyperbolic cosine)
    •   Math.atanh(x) 返回x的反双曲正切(inverse hyperbolic tangent)

ES6(四) --- 正则 Number Math的更多相关文章

  1. Java基础(四):Java Number & Math 类、Character 类、String 类、StringBuffer & StringBuilder 类

    一.Java Number & Math 类: 1.Number类: 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等.然而,在实际开发 ...

  2. ES6—数值(Number,Math对象)(复习+学习)

    ES6-数值(Number,Math对象)(复习+学习) 每天一学,今天要学习ES6的关于数的扩展以及复习,然后通过看书,查阅资料,以及webAPI来搞清楚遇到的,没见过的对象方法等等,下面为本次学习 ...

  3. ES6入门——正则的扩展

    1.RegExp构造函数 在ES5中,RegExp构造函数的参数有两种情况.第一种情况是参数是字符串,这时第二个参数表示正则表达式的修饰符:第二种情况是,参数是一个正则表示式,这时会返回一个原有正则表 ...

  4. ES6 String和Number扩展

    一.String 扩展 ①传统上,JavaScript 只有indexOf方法,可以用来确定一个字符串是否包含在另一个字符串中.ES6 又提供了三种新方法. includes():返回布尔值,表示是否 ...

  5. javascript_core之正则、Math、Date

      javascript_core之正则.Math.Date 1.RegExp:Regular Expression,创建封装正则表达式: ①正则直接量:var reg=/reg/ig:②var re ...

  6. Java-Runoob:Java Number & Math 类

    ylbtech-Java-Runoob:Java Number & Math 类 1.返回顶部 1. Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使 ...

  7. Number & Math

    Java Number & Math 类 一般地,当需要使用数字的时候,我们通常使用内置数据类型,如:byte.int.long.double 等. 实例 int a = 5000; floa ...

  8. Java 学习(6):java Number & Math & String & 数组...常用类型

    目录 --- Number & Math类 --- Character 类 --- String 类 --- StringBuffer 类 --- 数组 Number & Math类: ...

  9. [常用类]Number & Math 类(转载)

    下面的表中列出的是 Number & Math 类常用的一些方法: 序号 方法与描述 1 xxxValue() 将 Number 对象转换为xxx数据类型的值并返回. 2 compareTo( ...

随机推荐

  1. Yii 1开发日记 -- 后台搜索功能下拉及关联表搜索

    Yii 1 实现后台搜索,效果如下: 一. 下拉搜索: 1.模型中和常规的一样 if (isset($_GET['agency']['status']) && $_GET['agenc ...

  2. PHP之session与cookie

    1.session与cookie的关系 众所周知,session是存储在服务器端,cookie是存储在客户端,如果禁用了浏览器的cookie功能,很多时候(除非进行了特殊配置)服务器端就无法再读取se ...

  3. LINUX命令批量替换文件中的字符串

    sed -i "s/abcd/1234/g" `grep abcd -rl /home/data` find /data/web  -type f -exec  sed -i 's ...

  4. Mac eclipse配置Python环境

    1.给Eclipse安装PyDev插件 第一次启动会让选择一个工作空间,按缺省设置,勾选一下不再提醒,就可以了.在Help菜单中,选择Install New Software···, 选择Add按钮, ...

  5. Laravel中的日志与上传

    PHP中的框架众多,我自己就接触了好几个.大学那会啥也不懂啥也不会,拿了一个ThinkPHP学了.也许有好多人吐槽TP,但是个人感觉不能说哪个框架好,哪个框架不好,再不好的框架你能把源码读上一遍,框架 ...

  6. 基于EasyUI Treegrid的权限管理资源列表

    1. 前言 最近在开发系统权限管理相关的功能,主要包含用户管理,资源管理,角色管理,组类别管理等小的模块.之前的Web开发中也用过jQueryEasyUI插件,感觉这款插件简单易用,上手很快.以前用到 ...

  7. Dos命令查看端口占用及关闭进程

    1. 查看端口占用 在windows命令行窗口下执行: netstat -aon|findstr "8080" TCP 127.0.0.1:80 0.0.0.0:0 LISTENI ...

  8. 通过sql server 连接mysql

    图文:通过sql server 连接mysql   1.在SQL SERVER服务器上安装MYSQL ODBC驱动; 驱动下载地址:http://dev.mysql.com/downloads/con ...

  9. 从OOP的角度看Golang

    资料来源 https://github.com/luciotato/golang-notes/blob/master/OOP.md?hmsr=toutiao.io&utm_medium=tou ...

  10. clientX .offsetX .screenX x 的区别

    clientX 设置或获取鼠标指针位置相对于当前窗口的 x 坐标,其中客户区域不包括窗口自身的控件和滚动条. clientY 设置或获取鼠标指针位置相对于当前窗口的 y 坐标,其中客户区域不包括窗口自 ...