Object Class
+ + + + +Adds utilities to the YUI instance for working with objects.
+-
+
- Index + + +
- Methods + + +
- Properties + + + +
Item Index
+ + +Methods
+ +-
+
+
- + () + + + static + + + + +
- + each + + + static + + + + +
- + getValue + + + static + + + + +
- + hasKey + + + static + + + + +
- + hasValue + + + static + + + + +
- + isEmpty + + + static + + + + +
- + keys + + + static + + + + +
- + owns + + + static + + + + +
- + setValue + + + static + + + + +
- + size + + + static + + + + +
- + some + + + static + + + + +
- + values + + + static + + + + +
Properties
+ +-
+
+
- + _forceEnum + + + static + + + + +
- + _hasEnumBug + + + static + + + + +
- + _hasProtoEnumBug + + + static + + + + +
Methods
+ + +()
+
+
+ -
+
+
-
+
+
obj+ +
+
+
Returns a new object that uses obj as its prototype. This method wraps the
+native ES5 Object.create() method if available, but doesn't currently
+pass through Object.create()'s second argument (properties) in order to
+ensure compatibility with older browsers.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +Prototype object.
+
+
+
Returns:
+ +each
+
+
+ -
+
+
-
+
+
obj+ +
+
+ -
+
+
fn+ +
+
+ -
+
+
[thisObj]+ +
+
+ -
+
+
[proto=false]+ +
+
+
Executes a function on each enumerable property in obj. The function +receives the value, the key, and the object itself as parameters (in that +order).
+ +By default, only properties owned by obj are enumerated. To include
+prototype properties, set the proto parameter to true.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +Object to enumerate.
+
+
+ -
+
+
fn+ Function + + + + +++ + + + +Function to execute on each enumerable property.
+
+
+ -
+
+
[thisObj]+ Object + optional + + + + +++ + +
+thisobject to use when calling fn.
+
+ -
+
+
[proto=false]+ Boolean + optional + + + + +++ + +Include prototype properties.
+
+
+
Returns:
+ +getValue
+
+
+ -
+
+
-
+
+
o+ +
+
+ -
+
+
path+ +
+
+
Retrieves the sub value at the provided path, +from the value object provided.
+Parameters:
+ + +Returns:
+ +hasKey
+
+
+ -
+
+
-
+
+
obj+ +
+
+ -
+
+
key+ +
+
+
Alias for owns().
Parameters:
+ + +Returns:
+ + +hasValue
+
+
+ -
+
+
-
+
+
obj+ +
+
+ -
+
+
value+ +
+
+
Returns true if the object owns an enumerable property with the specified
+value.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +An object.
+
+
+ -
+
+
value+ Any + + + + +++ + +The value to search for.
+
+
+
Returns:
+ + +isEmpty
+
+
+ -
+
+
-
+
+
obj+ +
+
+
Returns true if the object has no enumerable properties of its own.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +An object.
+
+
+
Returns:
+ +true if the object is empty.
+
+ keys
+
+
+ -
+
+
-
+
+
obj+ +
+
+
Returns an array containing the object's enumerable keys. Does not include +prototype keys or non-enumerable keys.
+ +Note that keys are returned in enumeration order (that is, in the same order
+that they would be enumerated by a for-in loop), which may not be the same
+as the order in which they were defined.
This method is an alias for the native ES5 Object.keys() method if
+available.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +An object.
+
+
+
Returns:
+ +Example:
+ +Y.Object.keys({a: 'foo', b: 'bar', c: 'baz'});
+// => ['a', 'b', 'c']
+
+ owns
+
+
+ -
+
+
-
+
+
obj+ +
+
+ -
+
+
key+ +
+
+
Returns true if key exists on obj, false if key doesn't exist or
+exists only on obj's prototype. This is essentially a safer version of
+obj.hasOwnProperty().
Parameters:
+ + +Returns:
+ + +setValue
+
+
+ -
+
+
-
+
+
o+ +
+
+ -
+
+
path+ +
+
+ -
+
+
val+ +
+
+
Sets the sub-attribute value at the provided path on the +value object. Returns the modified value object, or +undefined if the path is invalid.
+Parameters:
+ + +Returns:
+ +size
+
+
+ -
+
+
-
+
+
obj+ +
+
+
Returns the number of enumerable keys owned by an object.
+Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +An object.
+
+
+
Returns:
+ +some
+
+
+ -
+
+
-
+
+
obj+ +
+
+ -
+
+
fn+ +
+
+ -
+
+
[thisObj]+ +
+
+ -
+
+
[proto=false]+ +
+
+
Executes a function on each enumerable property in obj, but halts if the +function returns a truthy value. The function receives the value, the key, +and the object itself as paramters (in that order).
+ +By default, only properties owned by obj are enumerated. To include
+prototype properties, set the proto parameter to true.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +Object to enumerate.
+
+
+ -
+
+
fn+ Function + + + + +++ + + + +Function to execute on each enumerable property.
+
+
+ -
+
+
[thisObj]+ Object + optional + + + + +++ + +
+thisobject to use when calling fn.
+
+ -
+
+
[proto=false]+ Boolean + optional + + + + +++ + +Include prototype properties.
+
+
+
Returns:
+ + +values
+
+
+ -
+
+
-
+
+
obj+ +
+
+
Returns an array containing the values of the object's enumerable keys.
+ +Note that values are returned in enumeration order (that is, in the same
+order that they would be enumerated by a for-in loop), which may not be the
+same as the order in which they were defined.
Parameters:
+ +-
+
+
-
+
+
obj+ Object + + + + +++ + +An object.
+
+
+
Returns:
+ +Example:
+ +Y.Object.values({a: 'foo', b: 'bar', c: 'baz'});
+// => ['foo', 'bar', 'baz']
+
+ Properties
+ + +_forceEnum
+ String[]
+
+
+
+
+ protected
+
+
+
+
+
+ static
+
+
+
+
+ Property names that IE doesn't enumerate in for..in loops, even when they
+should be enumerable. When _hasEnumBug is true, it's necessary to
+manually enumerate these properties.
_hasEnumBug
+ Boolean
+
+
+
+
+ protected
+
+
+
+
+
+ static
+
+
+
+
+ true if this browser has the JScript enumeration bug that prevents
+enumeration of the properties named in the _forceEnum array, false
+otherwise.
See: + - https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute#JScript_DontEnum_Bug + - http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
+_hasProtoEnumBug
+ Boolean
+
+
+
+
+ protected
+
+
+
+
+
+ static
+
+
+
+
+ true if this browser incorrectly considers the prototype property of
+functions to be enumerable. Currently known to affect Opera 11.50.
