javascript - 具有默认值的 var 原型(prototype)

标签 javascript prototype-programming

我看到 Stijn de Witt 提供了一个在 Javascript 中定义枚举的解决方案。

var SIZE = {
  SMALL : {value: 0, name: "Small", code: "S"},    
  MEDIUM: {value: 1, name: "Medium", code: "M"},    
  LARGE : {value: 2, name: "Large", code: "L"}
};

用法:

alert(SIZE.SMALL.value);
...

我一直在尝试调整它以允许我定义用户。

var RRR : {name: "RRRaney:, number: 2, date: 2007};

这正如我所期望的那样:

alert(RRR.name + " " + RRR.date); //to display the text "RRRaney 2007". 

我想尝试将 .name 定义为默认值, 所以我可以写这样的东西:

alert(RRR + " " + RRR.date);      //to display the text "RRRaney 2007".

或者只是

alert(RRR);                      // to display the text "RRRaney".

最佳答案

这可能是一个坏主意,我不知道其他浏览器将如何处理这个问题,但这在 Chrome 中有效......

http://jsfiddle.net/yvgj8/

var RRR = {
             name: "RRRaney", 
             number: 2, date: 2007, 
             toString: function(){
                return this.name;
             }
          };

alert(RRR + " " + RRR.date);

没想到这实际上会起作用,所以很可能在其他浏览器中不起作用。

关于javascript - 具有默认值的 var 原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6417308/

相关文章:

javascript - 在 JavaScript 中构建类的正确方法?

javascript - 如何操作原型(prototype)中的变量?

javascript - 在 Javascript 中,为什么实例或对象文字没有 "prototype"属性?

javascript - 为什么我在获取视频数据时收到错误 404?

javascript - 将过滤后的文档从 Mongo 集合传输到另一个集合的最佳方法(在 Nodejs 中)

javascript - dynamodb在列表中添加对象到列表中的对象内nodejs

javascript - 将计数器添加到上一个/下一个图像幻灯片(仅限 javascript/css)?

php - Chrome 不会按标签搜索数据列表