我的javascript代码有问题,因为我开始将其更改为OOP方法。我想在其中创建一个包含许多类函数的Object类,并且类函数应该能够相互调用。但这不起作用。这是一个(简化的)代码片段:
function MyClass(){
this.someClassVariable = false;
this.anotherClassVariable = 10;
}
MyClass.prototype = {
constructor: MyClass,
firstFunction:function(){
if (this.someClassVariable == false){
this.secondFunction();
}
},
secondFunction:function(){
while(this.anotherClassVariable != 0){
this.anotherClassVariable--;
console.log(this.anotherClassVariable);
}
}
}
var myClass = new MyClass();
navigator.getUserMedia({audio: true}, myClass.firstFunction, function(e) {});
这总是让我错误
Uncaught TypeError: __tracer.traceFunCall(...) is not a function
但是当我在没有getUserMedia()的情况下调用Class和Function时:
var myClass = new MyClass();
myClass.firstFunction();
它有效。
我错过了什么吗?如果有人可以给我一个提示,为这个特定的主题搜索了很多但没有找到任何东西,那真的很高兴。
谢谢!
答案 0 :(得分:0)
试试
navigator.getUserMedia({audio: true}, myClass.firstFunction.bind(myClass), function(e) {});