zoukankan      html  css  js  c++  java
  • 通用JS9

    Symbol.toStringTag

    该符号作为一个属性表示“一个字符串,该字符串用于创建对象的默认字符串描述。”由内置方法Object.prototype.toString()使用。
    通过toString()方法获取对象标识时,会检索由Symbol.toStringTag指定的实例标识符,默认为“Obejct”
    image

    Symbol.unscopables

    根据ECMAScript规范,这个符号作为一个属性表示“一个对象,该对象所有的以及继承的属性,都会从关联的with环境绑定中排除”。
    注意:不推荐使用with,因此也不推荐使用Symbol.unscopables

    Object类型

    ECMAScript中的对象其实就是一组数据和功能的集合。对象通过new操作符后跟对象类型的名称来创建。开发者可以通过创建Object类型的实例来创建自己的对象,然后再给对象添加属性和方法:
    let o = new Object();
    ECMAScript只要求给构造函数提供参数时使用括号。如果没有参数,那么完全可以省略(不推荐):
    let o = new Object;
    每个Object实例都有如下属性和方法

    1. constructor:用于创建当前对象的函数。在前面的例子中,这个属性的值就是Object()函数。
    2. hasOwnProperty(propertyName):用于判断当前对象实例(不是原型)上是否存在给定的属性。要检查的属性名必须是字符串(如:o.hasOwnProperty("name"))
    3. isPrototypeof(boject):用于判断当前对象是否为另一个对象的原型。
    4. propertyIsEnumerable(propertyName):用于判断给定的属性是否可以使用。与hasOwnProperty()一样,属性名必须是字符串。
    5. toLocaleString():返回对象的字符串表示,该字符串反应对象所在的本地化执行环境。
    6. toString():返回对象的字符串表示。
    7. valueOf():返回对象对应的字符串、数值或布尔值表示。通常与toString()的返回值相同。
      因为在ECMAScript中Object是所有对象的基类,所以任何对象都有这些属性和方法。

    注:参考书籍《JavaScript高级程序设计第四版》

  • 相关阅读:
    [CF1076D] Edge Deletion
    [CF1081D] Maximum Distance
    [CF1095F] Make It Connected
    [CF1328E] Tree Queries
    [CF1328F] Make k Equal
    Codeforces Round #629 (Div. 3) 总结
    [CF1131D] Gourmet choice
    [CF1176D] Recover it!
    [CF1205B] Shortest Cycle
    [CF1213G] Path Queries
  • 原文地址:https://www.cnblogs.com/huayang1995/p/15353076.html
Copyright © 2011-2022 走看看