lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On 13/12/2010, at 8:30 AM, Enrico Colombini wrote:

> On 12/12/2010 19.57, Geoff Leyland wrote:
>> t[1] is quicker than #t>  0, especially if t is a long array.
> > (Not my idea, Javier Guerra pointed this out in
> > http://lua-users.org/lists/lua-l/2008-03/msg00540.html)
> 
> Interesting... I always thought #t required constant time.
> However, t[1] is not equivalent to #t if the 'array' has a hole in t[1].


But it might be equal for some cases :-)

lua
...
> t = {}
> t[2] = 2
> = #t > 0
false
> = t[1]
nil

luajit-2.0.0-beta5 
...
> t = {}
> t[2] = 2
> = #t > 0
true
> = t[1]
nil