2012-09-07 14 views
6

मैं यूनिटी जेएस पर एक लेख पढ़ रहा था। आलेख ने एकता जेएस में एक वर्ग का एक उदाहरण दिखाया।यूनिटी जेएस के पास कक्षा कैसे है?

class Person{ 
    var name; 
    var career; 
} 

//Create objects of type Person 
var john = Person(); 
john.name = "John Smith"; 
john.career = "doctor"; 
Debug.Log(john.name + " is a " + john.career); 

ऐसा लगता है कि यूनिटी जेएस वास्तव में class कीवर्ड का समर्थन करता है। यह जावास्क्रिप्ट के साथ class का समर्थन कैसे करता है? क्या वे मृत ES4 spec या संशोधित ES3 या 5 का उपयोग कर रहे हैं?

उत्तर

9

UnityScript और जावास्क्रिप्ट के बीच मतभेदों पर इस लेख चेक आउट: http://wiki.unity3d.com/index.php?title=UnityScript_versus_JavaScript

इसके अलावा: Wikipedia के रूप में "ECMAScript से प्रेरित वाक्य रचना के साथ एक कस्टम भाषा"

+0

स्टैक ओवरफ़्लो में आपका स्वागत है! लिंक्ड-टू-कंटेंट का एक संक्षिप्त सारांश इस जवाब में काफी सुधार करेगा (और यदि लिंक बाद में बाँध जाता है तो समस्याएं रोकने में मदद करें)। –

+1

इस प्रश्न के प्रयोजनों के लिए, मुझे लगता है कि उस लेख का सबसे महत्वपूर्ण वाक्यांश 'यूनिटीज' है। जेएस "भाषा उस [ईसीएमएस्क्रिप्ट] विनिर्देश 'के अनुरूप होने के करीब भी नहीं आती है। –

+0

जोआचिम सॉसर ने बताया कि एक संक्षिप्त सारांश अच्छा होगा, लेकिन मुझे लगता है कि मुझे इसे एक उत्तर के रूप में स्वीकार करना होगा। लिंक पर जानकारी सटीक है। – Moon

1

एकता के जावास्क्रिप्ट, असली जावास्क्रिप्ट नहीं है, यह UnityScript का वर्णन करता है यूनिटी के शुरुआती के लिए संक्षिप्त वाक्यविन्यास वाला एक नई भाषा है। किसी ने इसे यूनिटीस्क्रिप्ट कहा क्योंकि वे केवल दो अलग-अलग भाषाएं हैं।

यूनिटी की जावास्क्रिप्ट एक कक्षा-आधारित ओओ भाषा है जो सभी ओओपी सुविधाओं का समर्थन करती है, और इसे एक ही प्रबंधित कोड में एकता में सी # के रूप में संकलित किया जाएगा।

उदाहरण के लिए, एक जावास्क्रिप्ट फ़ाइल एकता में "Foo.js" कहा जाता है

var myVar : int; 
function Update() {} 

रूप

class Foo : MonoBehaviour { 
    int myVar; 
    void Update() {} 
} 

मैं 100% समान भी मतलब पीछा किया, हालांकि कोई सी # स्क्रिप्ट के रूप में एक ही है Foo.js में कीवर्ड 'क्लास', लेकिन आप वास्तव में एक Foo क्लास बनाते हैं।

आप मैं क्या कह सत्यापित करने के लिए एक और स्क्रिप्ट "Boo.js" में वर्ग फू विरासत में कर सकते हैं:

class Boo extends Foo { 
    function Update() {} 
} 

एकता के Javscript Javscript की है वाक्य रचना है, लेकिन सी # की भावना।

संबंधित मुद्दे