Hãy nhìn vào lớp cơ bản này:Chuyển đổi C# lớp JavaScript
namespace AcmeWeb
{
public string FirstName { get; set; }
public class Person
{
public Person(string firstName, string lastName)
{
if (String.IsNullOrEmpty(firstName))
{
throw new ArgumentNullException(firstName);
}
this.FirstName = firstName;
}
}
}
bản dịch tốt nhất này vào hoạt Javascript là gì?
Đây là những gì tôi đang suy nghĩ:
(function(namespace) {
namespace.Person = function(firstName, lastName) {
// Constructor
(function() {
if (!firstName) {
throw "'firstName' argument cannot be null or empty";
}
})();
// Private memberts
var _ = {
firstName: firstName
};
// Public members
this.firstName = function(value) {
if (typeof(value) === "undefined") {
return _.firstName;
}
else {
_.firstName = value;
return this;
}
};
};
})(AcmeWeb);
Trước hết, tại sao chuyển đổi thành JS? Nếu nó là vì bạn cần đối tượng đó trên Máy khách, bạn có thể phân tích lớp của bạn thành JSON và chuyển nó cho máy khách, thì bạn sẽ có thể xử lý đối tượng JSON trên máy khách giống như lớp của bạn trên máy chủ. –
Tôi chỉ đang khám phá việc tạo thêm OO cho JavaScript. – AgileMeansDoAsLittleAsPossible
Có một cái gì đó gọi là Script # đó là một trình biên dịch cho C# để JavaScript: http://projects.nikhilk.net/ScriptSharp Tôi đã không bao giờ cố gắng này, nhưng ý tưởng âm thanh tuyệt vời với tôi. –