我想在Java Script中创建一个类。我可以使用与原型相结合的基本功能,但我想使用Object Literal Notation。是否可以使用Object Literal Notations创建类?
答案 0 :(得分:2)
你不能创建一个对象的实例(是的,你甚至可以在Javascript中看到函数作为对象,但我说的是文字定义的对象),你必须使用一个函数来定义一个可重用的类。
答案 1 :(得分:0)
无法完成....好吧,取决于你如何定义要求的参数。需要被完成?争论不休。
以下是我的一位同事的想法。
http://bit.ly/18xGdKi [带控制台示例的JSBin]
if (typeof (makeClass) === "undefined") {
makeClass = function(o) {
var F = function () {};
if (typeof (o) === "object" && o !== null) {
if (typeof (o.constructor) === "function") {
F = o.constructor;
}
F.prototype = o;
}
return F;
};
}
var MyClass = makeClass({
constructor: function (pName) {
var _myPrivateIdaho = 'Idaho ' + pName;
this.name = pName;
var _myPrivateFunc = function() {
console.log('You are in my ' +
_myPrivateIdaho +'.');
};
_myPrivateFunc();
},
getName: function() {
return this.name;
}
});
new MyClass('Bob');
new MyClass('Steve');