2011-11-22 15 views
8

मैं जावास्क्रिप्ट के लिए नया हूँ ... मैं एक वस्तु "फूल" बनाने के लिए कोशिश कर रहा। मूल्य, रंग, ऊंचाई ...गुणों के साथ एक वस्तु बनाएँ,

किसी ने मुझसे एक विचार है कि यह कैसे निर्माण करने के लिए दे सकते हैं: हर फूल यह गुण है?

एक वस्तु बनाने के लिए और फिर अपने गुणों को बदलने?

:-)

+0

एक सामान्य जावास्क्रिप्ट वस्तु? आपको उस –

उत्तर

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

flower.price(); 
flower.height ; 
+0

सिंगलटन वस्तुओं के लिए अच्छा है। – CSharper

9

एक वस्तु है, जहां आप भी कार्यों के लिए बाध्य कर सकते हैं है। क्योंकि आप आसानी से नए फूल बना सकते हैं निम्नलिखित, यदि आप कई फूल वस्तुओं करना चाहते इस्तेमाल किया जाना चाहिए और वे सभी कार्य आप जोड़ लिया है करना होगा:

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()); 
+0

के लिए jQuery की आवश्यकता नहीं होगी धन्यवाद, नील्स ... बहुत मददगार! – BorisD

+0

ने मेरी पोस्ट अपडेट की है, जेएसओएन प्रारूप के अंदर एक फ़ंक्शन करने का प्रयास किया है, और 'यह' ऑब्जेक्ट तत्व को संदर्भित करता है, इसलिए यदि आप फ़ंक्शंस का उपयोग शुरू करना चाहते हैं तो आप दोनों का उपयोग कर सकते हैं। – Niels

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

मान पुनर्प्राप्त करने के लिए:

var price = flower.price; 

को बदलने के लिए संपत्ति मूल्यों:

flower.price = newPrice; 
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(); 
संबंधित मुद्दे