Что я делаю неправильно, и как можно передавать переменные в другую функцию в пределах одной и той же переменной/функции переноса.Javascript Typedef Ошибка при использовании параметров
Пример:
function customFunctionWrap(){
this.myVar1 = 0;
this.getCurrentPosition = function(){
if (navigation.geolocation) {
navigator.geolocation.getCurrentPosition(function(position){});
}
},
this.doSomething = function(){ // Works
//Do something, return
this.callWithParams(); //Works
},
//If I remove passing in 'value1',calling it elsewhere works
this.doSomethingWithParams = function(value1){
//Use value1
//Return
},
this.callWithParams = function(){
var value1 = 'xyz'; //Is a variable that changes based on some DOM element values and is a dynamic DOM element
this.doSomethingWithParams(value1); //THROWS TYPEDEF ERROR: this.doSomethingWithParams is not a function
this.getCurrentPosition();
}
};
var local = new customFunctionWrap();
local.doSomething(); //WORKS
Я знаю, что есть еще один способ сделать это, а затем непосредственно использовать customFunctionWrap.callWithParams(), но я пытаюсь понять, почему бывший подход erroring вне.
var customFunctionWrap = {
myVar1 : 0,
callWithParams : function(){
}
}
Это совершенно неправильно. Что именно ты пытаешься сделать? –
Отредактированный вопрос о том, что работает, пока нет аргументов/параметров, переданных в вызове (аргумент), не работает, но call() работает в первом примере. Почему вызов (аргумент) не работает. Не очень ясно, что в IFE это часть, которую я пытаюсь понять правильно. –