有没有办法在Javascript中自定义/覆盖赋值操作?

时间:2010-09-22 14:51:06

标签: javascript assignment-operator

  

每次我分配字符串时,我实际上都想分配一个字符串对象,而不需要额外的代码。

var foo = "bar";
变为var foo = new String("bar");

基本上可以完成任务。


  

随访:
  如果以上是不可能的,有没有办法原型化string变量类型,而不是String对象?

正如armando所指出的,foo将是一个字符串类型,但实质上是一个自定义数组。能够将函数原型化到该类是很好的。

2 个答案:

答案 0 :(得分:2)

  1. 这不可能
  2. 如果有可能,你真的不想这样做,至少不是全球性的。

    • 字符串变量类型没有对象所做的所有额外开销 注意:创建的字符串数组(在您的情况下,foo)将具有其他属性(例如foo.length
    • 对象受到性能影响

答案 1 :(得分:0)

这不是你想要的,但你可能想看看Overriding assignment operator in JS