阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      JS 废弃和过时的 JavaScript 特性

      本附录列出了那些已经被废弃的(仍然可用,但未来会被删除)或者已经过时的(已经被删除,不能再用了)JavaScript 特性。

      废弃特性

      这些废弃的特性仍然可以使用,但你要保持谨慎,因为它们很可能会在未来的某个时候被删除。

      RegExp 全局对象的属性

      下面的这些属性已经被废弃。注意,这和替换字符串中使用的同名标记没有直接关系。

      属性描述
      $1, …, $9上次任意正则表达式的匹配操作中对应捕获分组的匹配结果。
      $_input 属性别名。
      $*multiline 属性别名。
      $&lastMatch 属性别名。
      $+lastParen 属性别名。
      $` | leftContext 属性别名。
      $'rightContext 属性别名。
      input上次任意正则表达式匹配的目标字符串。
      lastMatch上次任意正则表达式成功匹配的子字符串。
      lastParen上次任意正则表达式的匹配操作中最后一个捕获分组的匹配结果。
      leftContext上次任意正则表达式成功匹配的子字符串左边的字符串
      rightContext上次任意正则表达式成功匹配的子字符串右边的字符串

      应该使用下面这些正则实例上的同名属性来代替:

      属性描述
      global该正则是否开启了全局匹配模式。
      ignoreCase该正则是否开启了忽略大小写模式。
      lastIndex上次成功匹配后的索引位置,会成为下次匹配的开始索引位置,只在全局匹配或粘滞匹配模式下可用。
      multiline该正则是否开启了多行模式。
      source正则的源码

      RegExp 全局对象的方法

      compile 方法已经被废弃。

      valueOf 方法已经被废弃。使用 Object.valueOf 来替代。

      函数对象的属性

      caller 和 arguments 属性已经废弃,因为它们会泄漏函数调用者。你应该在函数内部使用 arguments 对象来代替函数的 arguments 属性。

      Date 方法

      getYear 和 setYear 方法因为会受千年虫问题的影响,所以已经被 getFullYear 和 setFullYear 方法替代。同时你还应该用 toISOString 方法来代替已经废弃的 toGMTString 方法。

      转义序列

      八进制转义序列(反斜杠、后跟一位,两位,或三位的八进制数字)出现在字符串字面量和正则字面量中的的用法已经废弃。

      escape 函数和 unescape 函数已经废弃,请使用 encodeURI,encodeURIComponent,decodeURI 或者 decodeURIComponent 来进行给定字符串的编码和解码工作。

      过时特性

      这些过时的特性已经完全被删除,不能在当前版本或者未来版本的 JavaScript 中使用了。

      对象

      属性描述
      count返回用户自定义对象上的可枚举自身属性的个数。
      parent指向一个对象的上下文。
      方法描述
      eval在指定对象的上下文上,将一个包含 JavaScript 代码的字符串求值

      函数

      属性描述
      arity形参的数量
      目录
      目录