• 面向对象的一些方法


    原型函数中有些方法和属性我们也一定要知道,有时候我们需要他们来判断一些东西,以下是我们常用到一些方法:

    1:toString();

    2:hasOwnProperty

    3:isPrototypeOf

    4:propertyIsEnumerable

    5:instanceof

    6:Object.defineProperty

    第一种(toString):它一般是用来检测内置对象的类型,它不能用来检测构造函数和对象字面两,他们检测出来的结果都是”[object  Object]”,它的用法是,它一般不会单独用toString(),因为任何对象有一个toString(),

    除了构造函数和对象字面量之外,它输出的结果的格式都是:

    第二种(hasOwnProperty):它的作用是用来判断一个对象是否拥有自己的属性(也就是说一个属性是否是它自己的属性),如果返回值是true,那属性是他自己的,反而是false,那这属性是继承过来的.它的用法是:

    因为a是它的属性,所以它输出的应该是true.

    第三种(isPrototypeOf):它的作用是判断当前的对象是否是参数对象的原型对象,它也是靠返回值来判断的,返回值是true,那当前对象就是参数对象的原型,反之是false,那当前对象不是参数对象的原型函数.

    实例中返回值应该是true,说明American.prototype是jaydon的原型对象.

    第四种(propertyIsEnumerable):它的功能是判断对象的某个属性是否可以枚举,

    可以被枚举的,返回值是true,反之为false

    它还可以用来定义一个属性,那个属性可以被枚举,也可以不被枚举,取决语中间的一个属性,它要跟第六个Object.defineProperty一起用:

    其中的enumerable的值决定是否能被枚举,如果为true,那定义的属性可以被枚举,反之是不能被枚举.

    第五种(a  instanceof   b):它的功能是判断a是否b的实例:

    实例中返回值是true,那apple是computer的实例.

    第六种(Object.defineProperty):它的功能是可以获取和设置属性值,它里面有get和set,分别代表的是设置和获得,只有get时,是可读不可写,只有set时是可写不可读,都没有和都有的,代表可读可写.

    如果你设置的35,执行set时就执行不下去了,到get时得到是0,如果设置的大于50,最后得到的就是你设置的值.

    第六种还可以用来给属性重新赋值:

    其中把false改为true,那就可以重新赋值.

    上面就是一些常用的判断方法,这些我们经常会用到的,需要记住的.

     

  • 相关阅读:
    mysql存储过程详细教程
    js timestamp与datetime之间的相互转换
    spring集成httpclient配置
    Spring使用@scope("session")爆org.springframework.beans.factory.UnsatisfiedDependencyException
    算术编码Arithmetic Coding-高质量代码实现详解
    String Reduction
    (转)Maximum subarray problem--Kadane’s Algorithm
    判断一个字符串在至多删除k个字符后是否为回文串
    最小区间使得至少包含每组元素中的一个
    Pots of gold game:看谁拿的钱多
  • 原文地址:https://www.cnblogs.com/cykblogs/p/5911144.html
Copyright © 2020-2023  润新知