zoukankan      html  css  js  c++  java
  • ES6笔记(一)

    1.ES6是JavaScript规范,之所以不叫JavaScript,一是因为商标问题,java是SUN公司的商标,只有Netscape才能使用JavaScript这个名字,且JavaScript已经被Netscape公司注册为商标。二是想体现这门语言的制定者是ECMA,而不是Netscape.

    2.ES6原意是指JavaScript5.1以后的下一代版本,泛指ES2015、ES2016、ES2017等等。

    3.ES5变量提升,全局作用域、函数作用域,ES6暂时性死区,块级作用域

    4.do表达式

    let x = do {
      let t = f();
      t * t + 1;
    }; x为整个块级作用域的返回值

    5.顶层对象和global对象

    6.解构赋值

    7.字符串:中文,charPointAt(0,2,for...of), fromCodePoint, at, normailize(NFC,NFD), includes, startsWith, endsWith, repeat, padStart, padEnd, 模板字符串,标签模板,String.raw(),模板字符串的限制(转义字符)

    8.正则的扩展:RegExp构造函数的参数(第二个有效),u修饰符(支持中文),y修饰符(同g,不同之处:后一次匹配从上一次匹配成功的下一个字符开始,属性:lastIndex,index,source,flags,sticky,RegExp.escape()(字符串转义),s修饰符(dotAll),后行断言,Unicode属性类。

    9.数值的扩展:二进制(0b,0B),八进制(0o,0O),Number.isFinite(),Number.isNaN()(只能判断number类型),Number.parseInt(),Number.parseFloat(),Number.isInteger(),Number.EPSILON(极小数,用于浮点数计算精确度),Number.MAX_SAFE_INTEGER,N umber.MIN_SAFE_INTEGER, Number.isSafeInteger(), Math.trunc()(返回整数部分),Math.sign()(判断一个数是正数、负数还是0,返回值:+1,-1,+0,-0,NAN),Math.cbrt()(计算一个数的立方根),Math.clz32()(返回一个数的32位无符号整数形式有多少个前导0),Math.imul()(返回两个数以32位带符号整数形式相乘的结果,返回的也是一个32位的带符号整数),Math.fround()(返回一个数的单精度浮点数形式),Math.hypot()(返回所有参数的平方和的平方根),Math.expm1()(返回ex - 1,即Math.exp(x) - 1),Math.log1p()(返回1 + x的自然对数,即Math.log(1 + x)。如果x小于-1,返回NaN),Math.log10()(返回以10为底的x的对数。如果x小于0,则返回NaN),Math.log2()(返回以2为底的x的对数。如果x小于0,则返回NaN),

    • 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)

    10.数组的扩展:Array.from(arr, ()=>{})(转化类数组和可遍历的对象为真正的数组),Array.of()(用于将一组值,转换为数组。如果没有参数,就返回一个空数组。这个方法的主要目的,是弥补数组构造函数Array()的不足。因为参数个数的不同,会导致Array()的行为有差异。),数组实例的copyWithin(),数组实例的find()和findIndex()(这两个方法都可以接受第二个参数,用来绑定回调函数的this对象。另外,这两个方法都可以发现NaN,弥补了数组的IndexOf方法的不足。),数组实例的fill(),数组实例的entries(),keys()和values(),数组实例的includes()(该方法属于ES7,但Babel转码器已经支持。),数组的空位

    ES5对空位的处理,已经很不一致了,大多数情况下会忽略空位。

    • forEach(), filter(), every()some()都会跳过空位。
    • map()会跳过空位,但会保留这个值
    • join()toString()会将空位视为undefined,而undefinednull会被处理成空字符串。

    ES6则是明确将空位转为undefined

    数组的常用方法见  https://www.cnblogs.com/obel/p/7016414.html

  • 相关阅读:
    zw版【转发·台湾nvp系列Delphi例程】HALCON FillUp2
    zw版【转发·台湾nvp系列Delphi例程】HALCON FillUp1
    zw版【转发·台湾nvp系列Delphi例程】HALCON FillUpShape2
    zw版【转发·台湾nvp系列Delphi例程】HALCON DivImage2
    zw版【转发·台湾nvp系列Delphi例程】HALCON FillUpShape1
    zw版【转发·台湾nvp系列Delphi例程】HALCON DivImage1
    phpstorm10.0.1和webstorm11注册
    制作自己的Cydia发布源
    theos的makefile写法
    wdcp v3 Forbidden :You don't have permission to access /phpmyadmin on this server
  • 原文地址:https://www.cnblogs.com/byayn/p/10840955.html
Copyright © 2011-2022 走看看