首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取CoffeeScript中的类类型

获取CoffeeScript中的类类型
EN

Stack Overflow用户
提问于 2012-03-02 06:36:46
回答 4查看 14.3K关注 0票数 18

一旦对象被实例化,我如何找到它的类呢?

class Cat
  constructor: (@name) ->

class Dog
  constructor: (@name) ->

cat = new Cat "Kitty"
dog = new Dog "Doggy"

if (cat == Cat)  <- I want to do something like this
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-02 07:03:36

只需将==更改为instanceof

if(cat instanceof Cat)
票数 29
EN

Stack Overflow用户

发布于 2014-12-15 19:30:22

如果您想知道特定对象的类型名称(这就是我发现这个问题时正在查找的内容),您可以使用语法{object}.constructor.name

例如

class Cat
    constructor: (@name) ->

  class Dog
    constructor: (@name) ->

  cat = new Cat()
  dog = new Dog()

  console.log cat.constructor.name
  console.log dog.constructor.name

它将输出以下内容

Cat
Dog
票数 7
EN

Stack Overflow用户

发布于 2012-03-02 06:58:55

执行此操作的方法是使用以下任一方法检查对象的类型

instanceof

typeof

if (obj instanceof Awesomeness){
//doSomethingCrazy();
}

就像在JavaScript中一样,Coffee Script不提供对这些函数的任何抽象

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9525292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档