jquery core: Patch from #2619 applied, making makeArray more flexible and faster; removed hint to ticket from (previously failing) test

This commit is contained in:
Jörn Zaefferer 2008-04-24 21:23:36 +00:00
parent f12d94a628
commit f8e5fd6fef
2 changed files with 8 additions and 7 deletions

View File

@ -1123,12 +1123,13 @@ jQuery.extend({
makeArray: function( array ) {
var ret = [];
// Need to use typeof to fight Safari childNodes crashes
if ( array.constructor != Array )
for ( var i = 0, length = array.length; i < length; i++ )
ret.push( array[ i ] );
else
ret = array.slice( 0 );
if( array != undefined )
//strings and functions also have 'length'
if( array.length != undefined && !array.split && !array.call )
for( var i = array.length; i; )
ret[--i] = array[i];
else
ret[0] = array;
return ret;
},

View File

@ -1562,7 +1562,7 @@ test("contents()", function() {
equals( c[0].nodeValue, "hi", "Check node,textnode,comment contents is just the one from span" );
});
test("makeArray(#2619)", function(){
test("$.makeArray", function(){
expect(11);
equals( $.makeArray(document.getElementsByName("PWD")).slice(0,1)[0].name, "PWD", "Pass makeArray a nodelist" );