老师 还有个疑问
来源:2-5 音乐播放器类实例
宝慕林4466778
2020-07-31 15:41:42
class AudioPlayer{
constructor(container){
this.container=document.querySelector(container)
this.songList=[];
this.dom=null;
this.audio=new Audio;
this.getsong();
this.createElement();
this.bindEvent();
this.render();
this._play;
}
getsong(){
// ajax...
this.songList=[
{
cover:'',
url:'',
singer:{
name:'',
hotsong:''
},
sonName:''
}
];
}
createElement(){
const div =document.createElement('div');
div.innerHTML=`
<div class="btn">播放按钮</div>
<div>进度条</div>
`;
this.dom=div;
}
bindEvent(){
this.dom.addEventListener('click', ()=>{
this._play();
// console.log('开始播放')
})
}
_play(){
console.log('开始播放')
}
render(){
this.container.appendChild(this.dom);
}
}
let a =new AudioPlayer('#app')
new AudioPlayer('#bpp')
console.log(a)
刚才写的时候觉得不太对。。。。。。constructor 老师这里相当于一个init 方法了。。。
正常开发的时候 应该要分开吧?
constructor 只用于定义
1回答
好帮手慕久久
2020-07-31
同学你好,可以这样写,constructor可以作用一个初始化init函数使用,但同时它也是程序的入口文件,即实例化时第一个被执行的函数,所以它里面可以调用方法。
如果我的回答帮到了你,欢迎采纳,祝学习愉快!
相似问题