在一个方法中创建的值可以通过调用在另一个方法中使用但在我的情况下我得到一个错误。请指教
(function() {
var s = {
appendToFilter: function(bread, value) {
console.log(bread); // value is 20
console.log(value); // value is 40
return value; // Need this value
},
//Append to container in order to render filters
appendToContainer: function(container, v, state) {
// I need the value returned in appendToFilter here
// I tried using global variable and tried to call appendToFilter here, no luck
// since it depends on flow of the methods is there any work around to get the value
},
getToFilter: function(value) {
var x = 20;
var y = 40;
s.appendToFilter(x,y);
}
}
});
答案 0 :(得分:0)
只需在函数外面声明一个全局变量。你可以在任何地方访问它。
var newVal;
(function() {
var s = {
appendToFilter: function(bread, value) {
console.log(bread); // value is 20
console.log(value); // value is 40
newVal=value;
return value; // Need this value
},
//Append to container in order to render filters
appendToContainer: function(container, v, state) {
console.log(newVal);
},
getToFilter: function(value) {
var x = 20;
var y = 40;
s.appendToFilter(x,y);
}
}
});
答案 1 :(得分:0)
(function() {
var s = {
appendToFilter: function(bread, value) {
console.log(bread);
console.log(value);
return value;
},
//Append to container in order to render filters
appendToContainer: function(container, v, state) {
var value = s.appendToFilter(10, 20); // call it as you used it getToFilter function
console.log(value)
},
getToFilter: function(value) {
var x = 20;
var y = 40;
s.appendToFilter(x,y);
}
}
});