Actionscript document defines that internal (default) variable means: (the variable is )Visible to references inside the same package.
But it doesn't compile correctly in FlexJS javascript mode in 0.7 and 0.6, it does build but the created javascript is broken: here is one simple class to reproduce the probelm: package { public class SomeClass { var field:String = "hello"; public function doSomething():String { return field; } } } the code runs perfectly in Flex and runs perfectly in FlexJS awf mode, but in javascript mode the created javascript looks like: /** * @export * @type {string} */ SomeClass.prototype.field = "hello"; /** * @export * @return {string} */ SomeClass.prototype.doSomething = function() { return field; }; above code fails in javascript If I use private or any other access control keyword: package { public class SomeClass { private var field:String = "hello"; public function doSomething():String { return field; } } } the produced javascript is: /** * @private * @type {string} */ SomeClass.prototype.field = "hello"; /** * @export * @return {string} */ SomeClass.prototype.doSomething = function() { return this.field; }; We had lots of existing Flex code which will be migrated to FlexJS, the default access control is used everywhere. If FlexJS changes syntax of actionscript, then there should be a document listing the difference, if syntax is not changed, then this is a bug needs to be fixed Thank you Pan Li My Apache Flex community contribution is working on the open source Moonshine-IDE.com for FlexJS.