在typescript中连接字符串函数的结果

时间:2017-09-25 13:37:32

标签: javascript typescript ecmascript-6 javascript-objects string-concatenation

打字稿的奥秘再次抬头。我有一个打字稿类User,它有一些属性firstName,lastName,eMail等。它还有一个toString()函数。

export class User {

  id = '{}';
  selected?= false;
  firstName = '<First Name>';
  lastName = '<Last Name>';
  eMail? = '<E Mail>';
  createdDate? = new Date(Date.now());
  updateDate?: Date;

  // tried this??
  //toString = () => this.firstName + ' ' + this.lastName;

  // and also this??
  toString() {
    return this.firstName + ' ' + this.lastName;
  }
}

函数toString()用于消息,对话框等,但当我尝试在字符串连接中使用它时,我得到[object Object]。

You are editing user ' + this.user.toString();

结果:

You are editing user [object Object]

我已经阅读了实例函数和原型函数,并尝试了它们。我还确保firstName和lastName确实是字符串。

为什么这种奇怪的行为?我不允许连接函数的结果吗?

0 个答案:

没有答案