array like objects

P T Withington ptw at
Tue Dec 15 11:30:05 PST 2009

On 2009-12-15, at 13:59, Mike Samuel wrote:

> 2009/12/15 P T Withington <ptw at>:
>> On 2009-12-08, at 13:10, Mike Samuel wrote:
>>> All true.  And yet it is not uncommon.  See the bottom of this email
>>> for a quick survey of a number of libraries' uses of the array-like
>>> concept.
>> FWIW, Here is the (separately/simultaneously invented) definition from OpenLaszlo:
>>  function isArrayLike (obj:*):Boolean {
>>    if (obj && ((obj is Array) || (obj['length'] != (void 0)))) {
> Please excuse my ignorance, but is "is" equivalent to "instanceof" and
> is the use of both obj['length'] and obj.length significant?

As Brendan surmised, this is OpenLaszlo's variant on Javascript, inspired by both ES4 and AS3 (which is probably why it is not found by code search).

'is' is equivalent to 'instanceof' (but also operates on interfaces and mixins).  obj['length'] is an idiom (used by our variant and AS3) to silence warnings (in debug mode) for referencing a non-existent property.

More information about the es-discuss mailing list