js 模块

This module provides some JavaScript utilities.All members can be accessed with "cc.js".

类型

索引

属性(properties)
方法
  • isNumber Check the obj whether is number or not
  • 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 obj
  • extend Both classes are just native javascript constructors, not created by cc.Class, so
  • getSuper Get super class
  • isChildClassOf Checks whether subclass is child of superclass or equals to superclass
  • clear Removes all enumerable properties from object
  • getPropertyDescriptor Get property descriptor in object and all its ancestors
  • value 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 manually
  • unregisterClass Unregister a class from fireball….
  • _getClassById Get the registered class by id
  • getClassByName Get the registered class by name
  • _getClassId Get class id of the object
  • obsolete 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 该方法是对 Object.create(null) 的简单封装。

Details

属性(properties)

_registeredClassIds
引擎中已注册的所有类型,通过 ID 进行索引。
metadescription
类型Unknown
定义于cocos2d/core/platform/js.js:433
示例
  1. // save all registered classes before loading scripts
  2. let builtinClassIds = cc.js._registeredClassIds;
  3. let builtinClassNames = cc.js._registeredClassNames;
  4. // load some scripts that contain CCClass
  5. ...
  6. // clear all loaded classes
  7. cc.js._registeredClassIds = builtinClassIds;
  8. cc.js._registeredClassNames = builtinClassNames;
_registeredClassNames
引擎中已注册的所有类型,通过名称进行索引。
metadescription
类型Unknown
定义于cocos2d/core/platform/js.js:449
示例
  1. // save all registered classes before loading scripts
  2. let builtinClassIds = cc.js._registeredClassIds;
  3. let builtinClassNames = cc.js._registeredClassNames;
  4. // load some scripts that contain CCClass
  5. ...
  6. // clear all loaded classes
  7. cc.js._registeredClassIds = builtinClassIds;
  8. cc.js._registeredClassNames = builtinClassNames;

方法

isNumber

Check the obj whether is number or notIf 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.

metadescription
返回Boolean
定义于cocos2d/core/platform/js.js:58
参数列表
  • 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.

metadescription
返回Boolean
定义于cocos2d/core/platform/js.js:70
参数列表
  • obj Any
addon

Copy all properties not defined in obj from arguments[1…n]

metadescription
返回Object
定义于cocos2d/core/platform/js.js:82
参数列表
  • obj Object object to extend its properties
  • sourceObj Object source object to copy properties from
mixin

copy all properties from arguments[1…n] to obj

metadescription
返回Object
定义于cocos2d/core/platform/js.js:109
参数列表
extend

Derive the class from the supplied base class.Both classes are just native javascript constructors, not created by cc.Class, sousually you will want to inherit using cc.Class instead.

metadescription
返回Function
定义于cocos2d/core/platform/js.js:134
参数列表
getSuper

Get super class

metadescription
返回Function
定义于cocos2d/core/platform/js.js:168
参数列表
  • ctor Function the constructor of subclass
isChildClassOf

Checks whether subclass is child of superclass or equals to superclass

metadescription
返回Boolean
定义于cocos2d/core/platform/js.js:180
参数列表
clear

Removes all enumerable properties from object

metadescription
定义于cocos2d/core/platform/js.js:215
参数列表
  • obj Any
getPropertyDescriptor

Get property descriptor in object and all its ancestors

metadescription
返回Object
定义于cocos2d/core/platform/js.js:227
参数列表
value

Define value, just help to call Object.defineProperty.The configurable will be true.

metadescription
定义于cocos2d/core/platform/js.js:245
参数列表
getset

Define get set accessor, just help to call Object.defineProperty(…)

metadescription
定义于cocos2d/core/platform/js.js:269
参数列表
get

Define get accessor, just help to call Object.defineProperty(…)

metadescription
定义于cocos2d/core/platform/js.js:299
参数列表
set

Define set accessor, just help to call Object.defineProperty(…)

metadescription
定义于cocos2d/core/platform/js.js:322
参数列表
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)

metadescription
返回String
定义于cocos2d/core/platform/js.js:339
参数列表
_setClassId

Register the class by specified id, if its classname is not defined, the class name will also be set.

metadescription
定义于cocos2d/core/platform/js.js:426
参数列表
setClassName

Register the class by specified name manually

metadescription
定义于cocos2d/core/platform/js.js:465
参数列表
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.

metadescription
定义于cocos2d/core/platform/js.js:482
参数列表
  • constructor Function the class you will want to unregister, any number of classes can be added
_getClassById

Get the registered class by id

metadescription
返回Function
定义于cocos2d/core/platform/js.js:505
参数列表
getClassByName

Get the registered class by name

metadescription
返回Function
定义于cocos2d/core/platform/js.js:516
参数列表
_getClassId

Get class id of the object

metadescription
返回String
定义于cocos2d/core/platform/js.js:526
参数列表
obsolete

Defines a polyfill field for obsoleted codes.

metadescription
定义于cocos2d/core/platform/js.js:559
参数列表
  • obj Any YourObject or YourClass.prototype
  • obsoleted 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.

metadescription
定义于cocos2d/core/platform/js.js:593
参数列表
  • obj Any YourObject or YourClass.prototype
  • objName Any "YourObject" or "YourClass"
  • props Object
  • writable Boolean
formatStr

A string tool to construct a string with format string.

metadescription
返回String
定义于cocos2d/core/platform/js.js:611
参数列表
  • 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.
示例
  1. cc.js.formatStr("a: %s, b: %s", a, b);
  2. cc.js.formatStr(a, b, c);
createMap

该方法是对 Object.create(null) 的简单封装。Object.create(null) 用于创建无 prototype (也就无继承)的空对象。这样我们在该对象上查找属性时,就不用进行 hasOwnProperty 判断。在需要频繁判断 hasOwnProperty 时,使用这个方法性能会比 {} 更高。

metadescription
返回Object
定义于cocos2d/core/platform/js.js:660
参数列表
  • 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.