【发布时间】:2011-11-22 09:39:54
【问题描述】:
我是 JavaScript 新手... 我试图创建一个对象-“花”。 每朵花都有它的属性:价格、颜色、高度……
谁能告诉我如何构建它?
创建一个对象,然后改变他的属性?
:-)
【问题讨论】:
-
一个普通的 JavaScript 对象?你不需要 jQuery
标签: javascript
我是 JavaScript 新手... 我试图创建一个对象-“花”。 每朵花都有它的属性:价格、颜色、高度……
谁能告诉我如何构建它?
创建一个对象,然后改变他的属性?
:-)
【问题讨论】:
标签: javascript
flower= {
price : function() {
console.log('Price is 78 $');
},
color: 'red',
height : 23
};
flower.price();
flower.height ;
【讨论】:
拥有一个对象,您还可以将函数绑定到该对象。如果您想拥有多个 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());
【讨论】:
this对象指的是元素,所以如果你想开始使用函数,可以同时使用。跨度>
这是创建具有公共/私有部分的对象的模式
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();
【讨论】:
var flower = {"height" : 18.3, "price":10.0, "color":"blue"}
【讨论】:
var flower = {"propertyName1": propertyValue1, "propertyName2": propertyValue};
要检索值:
var price = flower.price;
更改属性值:
flower.price = newPrice;
【讨论】: