首页 > 为什么会报错说Uncaught TypeError: volumeStatus is not a function

为什么会报错说Uncaught TypeError: volumeStatus is not a function

function volumeStatus() {
  if(video.muted) {
    volumeStatus = false;
    return volumeStatus
  } else {
    volumeStatus = true;
    return volumeStatus
  }
     
   function volumeChangeStatus() {
    volumeStatus();
    volumeStatus = volumeStatus().volumeStatus;
    if(!volumeStatus) {
      video.muted = false;
      volumeChangeUI(volumeStatus);
    } else {
        video.muted = true;
        volumeChangeUI(volumeStatus);
      }

 }   

在你volumeChangeStatus第一行调用volumeStatus之后,volumeStatus就已经不再是一个function了,所以你第二行会报错。

所以,请注意变量名!


为什么要把函数名和变量名定义成一样的呢


楼上说的对,当执行了第一行调用之后,在volumeStatus方法内部已经将它编程bool值了,所以后边就报错了。孩子,你这么写代码会被打死的,少声明变量不等于乱写呀。。。

【热门文章】
【热门文章】