There is a class as example:
var Class = {
   initialize: function(data){
      this.data = data;
   },
   add: function(node){
      //add object
   },
   remove: function(node){
      //remove object
   },
   findByIndex: function(id){
   },
}
and so on.
Question: How to import context into findByIndex?
For example I need to use findByIndex in another class as function.
I understand that it should be bind, but how to use it in my class?
findByIndex:function(id, ???context???){
      ????
}
///////////////////////ADD////////////////// this is method
L.Bookmarks = L.Class.extend({
    findByIdRecursive: function(idNumber) {
        var data = this.childNodes;
        var returnItems = {};
        function callback(node) {
            if (parseInt(node.id) === idNumber)
                returnItems = node;
        };
        for (var i = data.length - 1; i >= 0; i--) {
            this.iterator(data[i], callback, this);
        };
        return returnItems;
    },
    iterator: function(node, callback, context) {
        console.log(this)
        callback.call(this, node);
        var nodes = node.childNodes;
        if (nodes === undefined) {
            return;
        };
        for (var i = 0; i < nodes.length; i++) {
            var iterNode = nodes[i];
            this.iterator(iterNode, callback, this);
        };
    },
});
this is another class that use method iterator:
L.Book = L.Class.extend({
    findByIdRecursive: function(idNumber) {
        var data = this.childNodes;
        var returnItems = {};
        function callback(node) {
            console.log(this)
            if (parseInt(node.id) === idNumber)
                returnItems = node;
        };
        for (var i = data.length - 1; i >= 0; i--) {
            var itertator = L.Book.iterator.call(L.Bookmarks, data[i], callback)
        };
        return returnItems;
    },
});
As you can see, second class don't have method iterator. But finaly it should use iterator, like owner(with context(this - L.Book))