我想扩展String原型并在我的Angular 5应用程序的一个或多个组件中使用它。主要原因是我有一系列对象,它们具有属性,有时被填充,有时不被填充。例如:
我想做的基本上是不必担心客户地址是否已填充,只需访问
无论这个想法有多糟糕(已在其他问题中回答),这是否是一种实现方式?我应该在哪里声明它?有更好的解决方法吗?
谢谢。
附言:我知道我也可以重写我的Address类中的toString()方法并获得类似的结果,调用customer.address.toString()来获取_id,但我觉得这不太易读,我想先探索其他选项。
customer.address
有时是string
(地址的_id
),有时它被填充并且是一个Address
对象,带有一个_id
属性。我想做的基本上是不必担心客户地址是否已填充,只需访问
_id
。据其他响应这里称,这被认为是JavaScript反模式,但我考虑了做以下事情:String.prototype._id = function () {
return String.prototype.valueOf()
}
无论这个想法有多糟糕(已在其他问题中回答),这是否是一种实现方式?我应该在哪里声明它?有更好的解决方法吗?
谢谢。
附言:我知道我也可以重写我的Address类中的toString()方法并获得类似的结果,调用customer.address.toString()来获取_id,但我觉得这不太易读,我想先探索其他选项。
String.prototype
。 - str