Во-первых, используй локальные переменные. Например, numb должна определяться с оператором var. Во-вторых, getBookByNumber всегда будет возвращать false, я гарантирую это.
Как ты думаешь, в какое место будет возвращать значение вот эта функция:
req.onreadystatechange = function {
if (req.readyState == 4) {
return req.responseText;
}
}