这是什么类型的设置以及如何使用它?

时间:2014-02-12 11:00:25

标签: javascript

对于我正在研究的项目,我正在运行一些来自前一个程序员的Javascript编码,其基本结构如下。

var c_test = {
    testVar : '',

    init : function()
    {
        c_test.testVar = 'Hello world!';
    },

    showMe : function()
    {
    alert(this.testVar);
    }
};

上面创建的示例显示了我发现的广泛编码的基本版本。我想它是某种形式的面向对象的JS,但我不确定如何正确使用它。例如,我如何调用这段代码并运行'showMe()'函数?

3 个答案:

答案 0 :(得分:1)

这称为对象literal。这是通过列出其属性和方法来构建对象的直接方式。

答案 1 :(得分:0)

c_test视为具有两个函数initshowMe以及一个字段变量testVar

的对象

这就是你怎么称呼的。

c_test.showMe();

这也可以在OOP结构中编写如下。但当然,从技术上讲,这两者之间也存在差异。

function c_test (){
    this.testVar = '';

    this.init= function(){
       this.testVar='Hello World';
    };

     this.showMe = function(){
       alert(this.testVar);
    };
};

推荐阅读:

http://code.tutsplus.com/tutorials/the-basics-of-object-oriented-javascript--net-7670

答案 2 :(得分:0)

为了详细说明Madhur Ahuja的答案,这种编码方式基本上是直接创建你的对象,而不是先创建一个“类”并从中实例化你的对象。

这是可能的,因为javascript不是面向类的,因此您可以直接创建对象。这种方法的缺点是,与首先创建原型相比,它使这些对象的重用更加复杂。