Here you can find the source of first()
Array.prototype.first = function() { if (this.length == 0) return null return this.slice(0)[0] }
Array.prototype.first = function () { this.current = 0; return jQuery.extend(true, [], this[this.current]); }; Array.prototype.last = function () { this.current = this.length - 1; return jQuery.extend(true, [], this[this.length - 1]); }; Array.prototype.next = function () { ...
Array.prototype.first = function () { return this[0]; };
Array.prototype.first = function() { return this[0]; Array.prototype.last = function() { return this[this.length-1];
Array.prototype.first = function() { return this[0];
Array.prototype.first = function() { if (this.isEmpty()) { return null; return this[0]; };