创建一个包含属性的对象,

时间:2011-11-22 09:39:54

标签: javascript

我是javascript的新手...... 我试图创造一个对象 - “花”。 每朵花都有它的特性:价格,颜色,高度......

有人可以告诉我如何构建它吗?

创建一个对象,然后更改其属性?

: - )

5 个答案:

答案 0 :(得分:12)

flower= {
 price : function() { 
     console.log('Price is 78 $'); 
 },
 color: 'red',
 height : 23
};

flower.price();
flower.height ;

答案 1 :(得分:9)

有一个对象,你也可以在其中绑定函数。如果您想拥有多个Flower对象,则应使用以下内容,因为您可以轻松创建新的Flowers,并且它们都将具有您添加的功能:

function Flower(price, color, height){
    this.price = price;
    this.color= color;
    this.height= height;

    this.myfunction = function()
    {
        alert(this.color);
    }
}

var fl = new Flower(12, "green", 65);
fl.color = "new color");

alert(fl.color);
fl.myfunction();

如果你想拥有一种数组,只需使用一个对象文字,但你需要为你创建的每个对象设置属性和函数。

var flower = { price : 12, 
               color : "green",
               myfunction : function(){
                   alert(this.price);
               }
};
flower.price = 20;
alert(flower.price);
alert(flower.myfunction());

答案 2 :(得分:1)

var flower = {"height" : 18.3, "price":10.0, "color":"blue"}

答案 3 :(得分:1)

这是一个用公共/私人部门创建对象的模式

var MyObj = function()
{
    // private section
    var privateColor = 'red';

    function privateMethod()
    {
        console.log('privateMethod. The color is: ', privateColor);
    }

    // The public section
    return
    {
        publicColor : 'blue',
        publicMehtod: function()
        {
            // See the diffrent usage to 'this' keyword
            console.log('publicMehtod. publicColor:', this.publicColor, ', Private color: ', privateColor);
        },
        setPrivateColor: function(newColor)
        {
            // No need for this
            privateColor = newColor;
        },
        debug: function()
        {
            this.publicMehtod();
        }
    };
}

var obj1 = new MyObj();
obj1.publicMehtod();
obj1.setPrivateColor('Yellow');
obj1.publicMehtod();

var obj2 = new MyObj();
obj2.publicMehtod();

答案 4 :(得分:0)

var flower = {"propertyName1": propertyValue1, "propertyName2": propertyValue}; 

要检索值:

var price = flower.price;

更改属性值:

flower.price = newPrice;