第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

JavaScript有沒(méi)有isAssignableFrom的方法?

JavaScript有沒(méi)有isAssignableFrom的方法?

狐的傳說(shuō) 2019-03-12 16:12:59
在DOM環(huán)境中Comment類型繼承了Node類型var comment = document.createComment("xx");//在Java中這樣子判斷//Node.class.isAssignableFrom(comment.getClass());如何判斷Comment和Node的繼承關(guān)系呢?有沒(méi)有isAssignableFrom的類似這樣的判斷呢利用JavaScript原型鏈的性質(zhì)是否能實(shí)現(xiàn)類似的API呢Node.isAssignableFrom(comment.constructor);//Node.isAssignableFrom(Comment);
查看完整描述

1 回答

?
開心每一天1111

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊

用class關(guān)鍵字構(gòu)建的繼承體系,用instanceof判斷就可以了


class Animal{}

class Rabbit extends Animal{}

var rabbit = new Rabbit();

rabbit instanceof Rabbit; //true

rabbit instanceof Animal; //true

根據(jù)以上的情景,定義這個(gè)isAssignableFrom方法


Function.prototype.isAssignableFrom = function(f) {

    if(!(typeof f == "function")) {

        return false;

    }

    if(this == f) {

        return true;

    }

    var prototype = this.prototype;

    var p = f.prototype;

    while(p) {

        if(p == prototype) {

            return true;

        }

        p = p.__proto__;

    }

    return false;

}

結(jié)果


Animal.isAssignableFrom(Rabbit); //true

Text.isAssignableFrom(Comment); //false

Node.isAssignableFrom(Comment); //true


查看完整回答
反對(duì) 回復(fù) 2019-03-15
  • 1 回答
  • 0 關(guān)注
  • 468 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)