可以说JavaScript中的原型继承展示了类型多态性吗?
或者,JavaScript的弱类型排除了这一点吗?
function Parent () {}
function Child () {}
Child.prototype = Object.create(Parent.prototype);
Child.prototype.constructor = Child;
// Is Child a polymorphic implementation of Parent?
我是JavaScript的新手,这些天我在用它做实验。我逐渐了解到JavaScript是基于原型的。我尝试执行以下代码:
var Person = function(name) {
this.name = name;
}
alert(Person.prototype);
var ram = new Person("Ram");
alert(ram.prototype);
正如预期的那样,第一个警报打印对象,对象,我希望第二个警报打印相同的,但它没有,为什么?
有谁能解释清楚吗?
下面是一个在JavaScript中定义“类”、创建它的实例以及调用它的方法/函数之一的简单示例
// Define a class like this
function Person(name, gender){
// Add object properties like this
this.name = name;
this.gender = gender;
}
// Add methods like this. All Person objects will be able to invoke this
Person.prototype.speak = functi
我可以使用.prototype访问javascript函数的原型对象,但是当我不能在javascript对象文本上使用.prototype时。请让我知道为什么这种行为不一致。
var add = function (a, b) { return a + b; };
var s={name:'Pradeep'}
console.log('Function\'s prototype >> '+add.prototype)
console.log('Object\'s prototype >> '+ s.
据我所知,每个javascript对象都有一个原型,即使它只是来自Object.prototype的一个。
我有一个asp.net the服务代理,它可以从服务器获取参与者数据。那部分运作得很好。下面是代码:
atomWebServiceProxy.GetInteractionParticipants(interactionId,
function (participantsResult) {
var assetId, pendingPathFetches;
participants = p
我在玩javascript原型。我是个新手,所以我有一个小问题。
我正在使用这个作为指南。
我已经定义了Product和Book。Book.prototype.constructor = Book();的目的是什么。我搞不懂。无论有没有它,我都能成功地调用父构造函数。
Book.prototype = new Product;
Book.prototype.constructor = Book; // What's the purpose of this
这是我的jsFiddle
为什么最后一行在JavaScript中计算为未定义的?
function Boat() {}
var myBoat = new Boat();
console.log(Boat.prototype); //Boat(){}
console.log(myBoat.__proto__); //Boat(){}
console.log(myBoat.__proto__.prototype); //undefined - why is this not Boat(){}
当使用构造调用模式创建对象时,它的原型中有一个构造函数。到目前为止,每一个目标都是明确的。
var Function_a = function(){
};
var a = new Function_a;
但是,当函数不打算作为构造函数时,为什么仍然生成它的原型?(根据我的调试)
如果函数不打算成为构造函数,那么在什么情况下,这个原型c/会在javascript中使用?或者,如果函数不是构造函数,那么编译器是否不知道,只是创建了一个原型对象?
var function_b = function(){};
我问了一个问题:
你可以看到我已经标出了答案。我理解他的反应,但我有点困惑他说的是什么意思:
The prototype belongs to the class, not the instance:
这是否意味着javascript在本例中有一个类?我以为javascript是无类的?它只有函数构造函数...在什么情况下,函数构造函数会变成类?当您使用.prototype访问器向它添加其他成员时会发生这种情况吗?