js
Module
This module provides some JavaScript utilities. All members can be accessed with "cc.js".
Classes
Index
Properties
_registeredClassIds
Unknown
All classes registered in the engine, indexed by ID._registeredClassNames
Unknown
All classes registered in the engine, indexed by name.
Methods
isNumber
If a number is created by using 'new Number(10086)', the typeof it will be "object"...isString
Check the obj whether is string or not.addon
Copy all properties not defined in obj from arguments[1...n]mixin
copy all properties from arguments[1...n] to objextend
Derive the class from the supplied base class.getSuper
Get super classisChildClassOf
Checks whether subclass is child of superclass or equals to superclassclear
Removes all enumerable properties from objectisEmptyObject
Checks whether obj is an empty objectgetPropertyDescriptor
Get property descriptor in object and all its ancestorsvalue
Define value, just help to call Object.defineProperty.
...getset
Define get set accessor, just help to call Object.defineProperty(...)get
Define get accessor, just help to call Object.defineProperty(...)set
Define set accessor, just help to call Object.defineProperty(...)getClassName
Get class name of the object, if object is just a {} (and which class named 'Object'), it will return ""._setClassId
Register the class by specified id, if its classname is not defined, the class name will also be set.setClassName
Register the class by specified name manuallyunregisterClass
Unregister a class from fireball._getClassById
Get the registered class by idgetClassByName
Get the registered class by name_getClassId
Get class id of the objectobsolete
Defines a polyfill field for obsoleted codes.obsoletes
Defines all polyfill fields for obsoleted codes corresponding to the enumerable properties of props.formatStr
A string tool to construct a string with format string.createMap
A simple wrapper ofObject.create(null)
which ensures the return object have no prototype (and thus no inherited members).
Details
Properties
_registeredClassIds
All classes registered in the engine, indexed by ID.
meta | description |
---|---|
Type | Unknown |
Defined in | cocos2d/core/platform/js.js:443 |
Examples
// save all registered classes before loading scripts
let builtinClassIds = cc.js._registeredClassIds;
let builtinClassNames = cc.js._registeredClassNames;
// load some scripts that contain CCClass
...
// clear all loaded classes
cc.js._registeredClassIds = builtinClassIds;
cc.js._registeredClassNames = builtinClassNames;
_registeredClassNames
All classes registered in the engine, indexed by name.
meta | description |
---|---|
Type | Unknown |
Defined in | cocos2d/core/platform/js.js:459 |
Examples
// save all registered classes before loading scripts
let builtinClassIds = cc.js._registeredClassIds;
let builtinClassNames = cc.js._registeredClassNames;
// load some scripts that contain CCClass
...
// clear all loaded classes
cc.js._registeredClassIds = builtinClassIds;
cc.js._registeredClassNames = builtinClassNames;
Methods
isNumber
Check the obj whether is number or not If a number is created by using 'new Number(10086)', the typeof it will be "object"... Then you can use this function if you care about this case.
meta | description |
---|---|
Returns | Boolean |
Defined in | cocos2d/core/platform/js.js:58 |
Parameters
obj
Any
isString
Check the obj whether is string or not. If a string is created by using 'new String("blabla")', the typeof it will be "object"... Then you can use this function if you care about this case.
meta | description |
---|---|
Returns | Boolean |
Defined in | cocos2d/core/platform/js.js:70 |
Parameters
obj
Any
addon
Copy all properties not defined in obj from arguments[1...n]
meta | description |
---|---|
Returns | Object |
Defined in | cocos2d/core/platform/js.js:82 |
Parameters
mixin
copy all properties from arguments[1...n] to obj
meta | description |
---|---|
Returns | Object |
Defined in | cocos2d/core/platform/js.js:109 |
Parameters
extend
Derive the class from the supplied base class. Both classes are just native javascript constructors, not created by cc.Class, so usually you will want to inherit using cc.Class instead.
meta | description |
---|---|
Returns | Function |
Defined in | cocos2d/core/platform/js.js:134 |
Parameters
getSuper
Get super class
meta | description |
---|---|
Returns | Function |
Defined in | cocos2d/core/platform/js.js:168 |
Parameters
ctor
Function the constructor of subclass
isChildClassOf
Checks whether subclass is child of superclass or equals to superclass
meta | description |
---|---|
Returns | Boolean |
Defined in | cocos2d/core/platform/js.js:180 |
Parameters
clear
Removes all enumerable properties from object
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:215 |
Parameters
obj
Any
isEmptyObject
Checks whether obj is an empty object
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:227 |
Parameters
obj
Any
getPropertyDescriptor
Get property descriptor in object and all its ancestors
meta | description |
---|---|
Returns | Object |
Defined in | cocos2d/core/platform/js.js:239 |
Parameters
value
Define value, just help to call Object.defineProperty.
The configurable will be true.
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:257 |
Parameters
getset
Define get set accessor, just help to call Object.defineProperty(...)
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:281 |
Parameters
get
Define get accessor, just help to call Object.defineProperty(...)
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:309 |
Parameters
set
Define set accessor, just help to call Object.defineProperty(...)
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:332 |
Parameters
getClassName
Get class name of the object, if object is just a {} (and which class named 'Object'), it will return "". (modified from the code from this stackoverflow post)
meta | description |
---|---|
Returns | String |
Defined in | cocos2d/core/platform/js.js:349 |
Parameters
_setClassId
Register the class by specified id, if its classname is not defined, the class name will also be set.
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:436 |
Parameters
setClassName
Register the class by specified name manually
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:475 |
Parameters
unregisterClass
Unregister a class from fireball.
If you dont need a registered class anymore, you should unregister the class so that Fireball will not keep its reference anymore. Please note that its still your responsibility to free other references to the class.
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:492 |
Parameters
constructor
Function the class you will want to unregister, any number of classes can be added
_getClassById
Get the registered class by id
meta | description |
---|---|
Returns | Function |
Defined in | cocos2d/core/platform/js.js:515 |
Parameters
classId
String
getClassByName
Get the registered class by name
meta | description |
---|---|
Returns | Function |
Defined in | cocos2d/core/platform/js.js:526 |
Parameters
classname
String
_getClassId
Get class id of the object
meta | description |
---|---|
Returns | String |
Defined in | cocos2d/core/platform/js.js:536 |
Parameters
obsolete
Defines a polyfill field for obsoleted codes.
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:569 |
Parameters
obj
Any YourObject or YourClass.prototypeobsoleted
String "OldParam" or "YourClass.OldParam"newExpr
String "NewParam" or "YourClass.NewParam"writable
Boolean
obsoletes
Defines all polyfill fields for obsoleted codes corresponding to the enumerable properties of props.
meta | description |
---|---|
Defined in | cocos2d/core/platform/js.js:603 |
Parameters
obj
Any YourObject or YourClass.prototypeobjName
Any "YourObject" or "YourClass"props
Objectwritable
Boolean
formatStr
A string tool to construct a string with format string.
meta | description |
---|---|
Returns | String |
Defined in | cocos2d/core/platform/js.js:621 |
Parameters
msg
String | Any A JavaScript string containing zero or more substitution strings (%s).subst
Any JavaScript objects with which to replace substitution strings within msg. This gives you additional control over the format of the output.
Examples
cc.js.formatStr("a: %s, b: %s", a, b);
cc.js.formatStr(a, b, c);
createMap
A simple wrapper of Object.create(null)
which ensures the return object have no prototype (and thus no inherited members). So we can skip hasOwnProperty
calls on property lookups. It is a worthwhile optimization than the {}
literal when hasOwnProperty
calls are necessary.
meta | description |
---|---|
Returns | Object |
Defined in | cocos2d/core/platform/js.js:670 |
Parameters
forceDictMode
Boolean Apply the delete operator to newly created map object. This causes V8 to put the object in "dictionary mode" and disables creation of hidden classes which are very expensive for objects that are constantly changing shape.