| 
本帖最后由 怠惰な騎士 于 2017-7-16 02:27 编辑
x
加入我们,或者,欢迎回来。您需要 登录 才可以下载或查看,没有帐号?注册会员  
 RPG Maker MV 内核的大部分代码均使用ECMAScript5(JavaScript)编写,但由于RMMV使用NW.js(又名Node-webkit)作为其脚本运行环境,尽管RMMV所用nw.js的版本是老的0.12.3,但这个版本依旧有一些已经实现了的可以使用的ES6的特性。
 
 下方是基于Kino在RMWEB发的帖子整理后的RMMV内确认已经可以使用的ECMAScript6的特性语法。
 注意:如果你发现任何特性失效或者有新的特性,欢迎在楼下指出,我会及时更新本帖。
 
 已发现的问题
 
 类方法中的super调用
 
 版本:1.5.0
 错误:ReferenceError - 'super' is referenced from non-method
 
 如下的代码会在游戏中报错,但如果打开了F8并刷新,就不会报错,原因暂时不明。
 
 
 class AnyClass extends Sprite { constructor() { super(); } initialize() { super.initialize(); }}
class AnyClass extends Sprite { 
 constructor() { super(); } 
 initialize() { super.initialize(); } 
} 
 class AnyClass extends Sprite { constructor() { super(); } initialize() { super.initialize.call(this); }}
class AnyClass extends Sprite { 
 constructor() { super(); } 
 initialize() { super.initialize.call(this); } 
} 
 替代方案:
 
 
 class AnyClass extends Sprite { constructor() { super(); } initialize() { Sprite.prototype.initialize.call(this); }}
class AnyClass extends Sprite { 
 constructor() { super(); } 
 initialize() { Sprite.prototype.initialize.call(this); } 
} 
 特性列表
 
 * Block Scoped Variables
 * Objects
 * Objects Assignment
 * Shorthand Object Properties
 * Method Properties
 * Template Literals
 * Expression Interpolation
 * Multiline Strings
 * Classess
 * Class Inheritance
 * Base Class Access
 * Getters and Setters
 * Symbols
 * String Methods
 * Repeat
 * Starts With
 * Includes
 * IndexOf
 * Numbers
 * Type Checking
 * Safety Checking
 * Number Comparison
 * Truncation
 * Sign Determination
 * Sets and Weak Sets
 * Maps and Weak Maps
 
 参考资料:
 * RPGMaker MV ES6 Feature List @ Kino 2016.9.26
 * ES6-Features.org
 |