Javascript裡類的思想(zz)
來源:互聯網
上載者:User
<script language="javascript" runat="server">
function MyFile(filename, filesize, type, datelastaccessed)
{
this.filename = filename;
this.filesize = filesize;
this.type = type;
this.datelastaccessed = datelastaccessed;
}
function ArrayFile()
{
this.f = new Array();
this.count = 0;
this.add=function(file)
{
this.f.push( file );
this.count+=1;
}
this.max=function(f1, f2, field)
{
switch( field )
{
case "filename":
return f1.filename>f2.filename? true:false;
case "filesize":
return f1.filesize>f2.filesize? true:false;
case "type":
return f1.type>f2.type? true:false;
case "datelastaccessed":
return f1.datelastaccessed>f2.datelastaccessed? true:false;
default:
return false;
}
}
this.sort=function(field, order)
{
//order:desc asc
//field:filename filesize
var len = this.f.length;
if( len < 2 ) return;
var tmp;
for(var i=0; i<len-1; i++)
{
for(var j=i+1; j<len; j++)
{
if( order == "desc")
{
if( !this.max( this.f[i], this.f[j], field ) )
{
tmp = this.f[i];
this.f[i] = this.f[j];
this.f[j] = tmp;
}
}
else if ( order == "asc")
{
if( this.max( this.f[i], this.f[j], field ) )
{
tmp = this.f[i];
this.f[i] = this.f[j];
this.f[j] = tmp;
}
}
}
}
}
}
</script>