簡體   English   中英

從javascript中的原型函數訪問構造函數名稱

[英]accessing constructor name from prototype function in javascript

是否可以執行以下操作:

function A() {}
function B() {}
B.prototype = A;
function C() {}
C.prototype = A;

A.prototype.myname = function() { /* get 'B' or 'C' here */ }

這樣,例如當我調用B.myname()時,函數主體中將使用名稱“ B”嗎?

按預期方式嘗試this.constructor.name每次只會返回“ A”。

我想你在找這個嗎?

function A() {}
A.prototype.myname = function() {
    return this.constructor.name;   
};
function B() {}
B.prototype = new A();
B.prototype.constructor = B;
var b = new B();
console.log(b.myname()); // logs B

http://jsfiddle.net/BFxnb/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM