Lang Class
+ + + + +Provides core language utilites and extensions used throughout YUI.
+Item Index
+ + +Methods
+ +-
+
+
- + _isNative + + + static + + + + +
- + isArray + + + static + + + + +
- + isBoolean + + + static + + + + +
- + isDate + + + static + + + + +
- + isFunction + + + static + + + + +
- + isNull + + + static + + + + +
- + isNumber + + + static + + + + +
- + isObject + + + static + + + + +
- + isString + + + static + + + + +
- + isUndefined + + + static + + + + +
- + isValue + + + static + + + + +
- + now + + + static + + + + +
- + sub + + + static + + + + +
- + trim + + + static + + + + +
- + trimLeft + + + static + + + + +
- + trimRight + + + static + + + + +
- + type + + + static + + + + +
Methods
+ + +_isNative
+
+
+ -
+
+
-
+
+
fn+ +
+
+
Returns true if the given function appears to be implemented in native code,
+false otherwise. Will always return false -- even in ES5-capable browsers --
+if the useNativeES5 YUI config option is set to false.
This isn't guaranteed to be 100% accurate and won't work for anything other than
+functions, but it can be useful for determining whether a function like
+Array.prototype.forEach is native or a JS shim provided by another library.
There's a great article by @kangax discussing certain flaws with this technique: +http://perfectionkills.com/detecting-built-in-host-methods/
+ +While his points are valid, it's still possible to benefit from this function +as long as it's used carefully and sparingly, and in such a way that false +negatives have minimal consequences. It's used internally to avoid using +potentially broken non-native ES5 shims that have been added to the page by +other libraries.
+Parameters:
+ +-
+
+
-
+
+
fn+ Function + + + + +++ + +Function to test.
+
+
+
Returns:
+ + +isArray
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is an array.
+ +Returns false for array-like collections such as the function arguments
+collection or HTMLElement collections. Use Y.Array.test() if you want to
+test for an array-like collection.
Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isBoolean
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is a boolean.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isDate
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the supplied item is a date instance.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isFunction
+
+
+ -
+
+
-
+
+
o+ +
+
+
+Determines whether or not the provided item is a function. +Note: Internet Explorer thinks certain functions are objects: +
+ +
+var obj = document.createElement("object");
+Y.Lang.isFunction(obj.getAttribute) // reports false in IE
+
+var input = document.createElement("input"); // append to body
+Y.Lang.isFunction(input.focus) // reports false in IE
+
+
++You will have to implement additional tests if these functions +matter to you. +
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isNull
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is null.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isNumber
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is a legal number.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isObject
+
+
+ -
+
+
-
+
+
o+ +
+
+ -
+
+
failfn+ +
+
+
Determines whether or not the provided item is of type object
+or function. Note that arrays are also objects, so
+Y.Lang.isObject([]) === true.
Parameters:
+ + +Returns:
+ +isString
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is a string.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isUndefined
+
+
+ -
+
+
-
+
+
o+ +
+
+
Determines whether or not the provided item is undefined.
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The object to test.
+
+
+
Returns:
+ +isValue
+
+
+ -
+
+
-
+
+
o+ +
+
+
A convenience method for detecting a legitimate non-null value. +Returns false for null/undefined/NaN, true for other values, +including 0/false/''
+Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +The item to test.
+
+
+
Returns:
+ +now
+
+
+ ()
+
+
+
+
+ Number
+
+
+
+
+
+
+
+
+
+
+ static
+
+
+
+
+
+
+
+
+ Returns the current time in milliseconds.
+Returns:
+ +sub
+
+
+ -
+
+
-
+
+
s+ +
+
+ -
+
+
o+ +
+
+
Lightweight version of Y.substitute. Uses the same template
+structure as Y.substitute, but doesn't support recursion,
+auto-object coersion, or formats.
Parameters:
+ + +Returns:
+ +trim
+
+
+ -
+
+
-
+
+
s+ +
+
+
Returns a string without any leading or trailing whitespace. If +the input is not a string, the input will be returned untouched.
+Parameters:
+ +-
+
+
-
+
+
s+ String + + + + +++ + +the string to trim.
+
+
+
Returns:
+ +trimLeft
+
+
+ -
+
+
-
+
+
s+ +
+
+
Returns a string without any leading whitespace.
+Parameters:
+ +-
+
+
-
+
+
s+ String + + + + +++ + +the string to trim.
+
+
+
Returns:
+ +trimRight
+
+
+ -
+
+
-
+
+
s+ +
+
+
Returns a string without any trailing whitespace.
+Parameters:
+ +-
+
+
-
+
+
s+ String + + + + +++ + +the string to trim.
+
+
+
Returns:
+ +type
+
+
+ -
+
+
-
+
+
o+ +
+
+
Returns one of the following strings, representing the type of the item passed +in:
+ +-
+
- "array" +
- "boolean" +
- "date" +
- "error" +
- "function" +
- "null" +
- "number" +
- "object" +
- "regexp" +
- "string" +
- "undefined" +
Known issues:
+ +-
+
typeof HTMLElementCollectionreturns function in Safari, but +Y.Lang.type()reports "object", which could be a good thing -- +but it actually caused the logic inY.Lang.isObjectto fail.
+
Parameters:
+ +-
+
+
-
+
+
o+ Object + + + + +++ + +the item to test.
+
+
+
