最近项目使用到表的排序,我使用table.sort通过表的value排序,使用key进行排序暂未研究。之前一直不是很清楚table.sort这个方法,刚好有机会记录一下。
方法原型:table.sort (table, funtion(a,b))
两个入参:1.table-----------需要排序的table
2.function-------排序方法,可自定义。如果不填,则按默认排序。形式是固定的,入参a,b为排序table中的value1、value2....(这个具体不知道怎么描述)
1.不传排序方法,采用自定义:
结果:
可以看到,table.sort默认是使用table中存贮的 value进行从小到大的排序,有一点需要注意的是,如果table中含有number和string,使用默认的方法进行比较会报 number和string比较的错误。也有一些别的坑,使用的时候需要谨慎(默认的我用的比较少)
2.传入自定义的排序方法:
例如传入的table是 :