查看类属性

对象的类属性(class atribute) 是一个字符串,用以表示对象的类型信息,ECMAScript3和5都未提供查询这个属性的方法,并只有一种间接的方法可以查询它

默认的toString()方法,,返回了[object class] 然后提取已返回字符串的第8个到倒数第二个位置之间的字符.,不过,很多对象继承的toString方法重写了,为了能调用正确的toString()

必须间接调用Function.call()方法

 function classof(o){

if(o===null) return "Null";

if(o===undefined) return "undefined";

return Object.prototype.toString.call(o).slice(8,-1);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
查看属性,可以直接通过名访问该属性。例如,假设我们有一个`Person`,其中定义了一个属性`count`: ``` class Person: count = 0 def __init__(self, name): self.name = name Person.count += 1 ``` 我们可以通过名`Person`来访问属性`count`: ``` print(Person.count) # 输出:0 p1 = Person("Alice") print(Person.count) # 输出:1 p2 = Person("Bob") print(Person.count) # 输出:2 ``` 在上面的例子中,我们通过`Person.count`来访问属性`count`。如果属性是可读写的,我们也可以通过该方式来修改属性的值: ``` Person.count = 100 print(Person.count) # 输出:100 ``` 需要注意的是,如果属性是私有的,即名称以双下划线开头(例如`__count`),那么无法通过名直接访问该属性。但是,可以通过定义一个方法(或静态方法)来访问该属性。例如: ``` class Person: __count = 0 def __init__(self, name): self.name = name Person.__count += 1 @classmethod def get_count(cls): return cls.__count ``` 在上面的例子中,我们定义了一个名为`get_count`的方法,用于访问属性`__count`。通过该方法,我们可以获取属性的值: ``` print(Person.get_count()) # 输出:0 p1 = Person("Alice") print(Person.get_count()) # 输出:1 p2 = Person("Bob") print(Person.get_count()) # 输出:2 ``` 需要注意的是,方法中的第一个参数通常被命名为`cls`,它表示当前本身。因此,在访问属性时,我们通常使用`cls`来代替名。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值