首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >这是什么怪物?

这是什么怪物?
EN

Stack Overflow用户
提问于 2014-07-27 23:36:12
回答 3查看 73关注 0票数 2

我偶然发现一些类似于此的javascript,我想知道是什么。它的功能类似于在变量声明中定义和实例的单例类。这种建筑我怎么称呼?

代码语言:javascript
运行
复制
<script>
    var abacus=
    {
        runningSum:0
        ,addSum:function(i){
            this.runningSum += i;
            return this.runningSum;
        }
        ,subtractSum:function(i){
            this.runningSum -= i;
            return this.runningSum;
        }
    }
    console.log(abacus.addSum(3));
    console.log(abacus.subtractSum(2));
</script>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-27 23:40:32

不是怪物。它是分配给变量算盘的匿名对象构造函数(文字)。它有三个属性: runningSum、addSum和subtractSum。addSum和subtractSum被分配给匿名函数。

票数 2
EN

Stack Overflow用户

发布于 2014-07-27 23:39:19

它只是一个对象字面,它是一个完全合理的方式来定义“单字”。我不认为它有什么特别的名字。

唯一奇怪的是缩进--大多数人会写得更像这样:

代码语言:javascript
运行
复制
var abacus = {
    runningSum: 0,
    addSum: function(i){
        this.runningSum += i;
        return this.runningSum;
    },
    subtractSum: function(i){
        this.runningSum -= i;
        return this.runningSum;
    }
};
票数 5
EN

Stack Overflow用户

发布于 2014-07-27 23:40:24

它被称为对象文字。

http://www.dyn-web.com/tutorials/object-literal/

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

https://stackoverflow.com/questions/24986729

复制
相关文章

相似问题

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