Это:
var text = args.shift;
это не вызов метода, вы хотите:
var text = args.shift();
Все, что делает ваш оригинал, назначает метод shift
от args
до text
, следовательно, ваш:
function shift() { [native code] }
вывод в вашем alert
. Выполнение args.shift
не повлияет на args
, поэтому эти два:
var minimum = args.shift;
var maximum = args.shift;
просто дать вам еще две ссылки на args.shift
без изменения args
.