亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為什么沒有OOP的PPT,我打算做筆記,但是實在是懶得手打了

為什么沒有OOP的PPT,我打算做筆記,但是實在是懶得手打了

正在回答

1 回答

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title>探測器</title>

<script type="text/javascript">

!function(global){

function DetectorBase(configs){

if(!this instanceof DetectorBase){

throw new Error('Do not invoke without new.');

}

this.configs = configs;

this.analyze();

}



DetectorBase.prototype.detect = function(){

throw new Error('Not implemented');

};


DetectorBase.prototype.analyze = function(){

console.log('analyzing...');

this.data = '###data###';

};


function LinkDetector(links){

if(!this instanceof LinkDetector){

throw new Error('Do not invoke without new.');

}

this.links = links;

DetectorBase.apply(this,arguments);

}


function ContainerDetector(containers){

if(!this instanceof ContainerDetector){

throw new Error('Do not invoke without new.');

}

this.containers = containers;

DetectorBase.apply(this,arguments);

}



//inherit first

inherit(LinkDetector,DetectorBase);

inherit(ContainerDetector, DetectorBase);


LinkDetector.prototype.detect = function(){

console.log('Loading data:'+this.data);

console.log('Link detection started');

console.log('Scaning links:'+this.links);

};


ContainerDetector.prototype.detect = function(){

console.log('Loading data:'+this.data);

console.log('Link detection started');

console.log('Scaning containers:'+this.containers);

};


//prevent from being alerted

Object.freeze(DetectorBase);

Object.freeze(DetectorBase.prototype);

Object.freeze(LinkDetector);

Object.freeze(LinkDetector.prototype);

Object.freeze(ContainerDetector);

Object.freeze(ContainerDetector.prototype);


//export to global object

? ?Object.defineProperties(global,{

LinkDetector:{value:LinkDetector},

ContainerDetector:{value:ContainerDetector},

DetectorBase:{value:DetectorBase}

});


function inherit(subClass,superClass){

subClass.prototype = Object.create(superClass.prototype);

subClass.prototype.constructor = subClass;

}

}(this);


var cd = new ContainerDetector('#abc #def #ghi');

var ld = new LinkDetector('http://www.taobao.com http://www.tmall.com http://www.baidu.com');


cd.detect();

ld.detect();

</script>

</head>

<body>


</body>

</html>


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

為什么沒有OOP的PPT,我打算做筆記,但是實在是懶得手打了

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號