Referencia de ActionScript® 3.0 para la plataforma de Adobe® Flash®
Inicio  |  Ocultar lista de paquetes y clases |  Paquetes  |  Clases  |  Novedades  |  Índice  |  Apéndices  |  ¿Por qué hay texto en inglés?
Filtros: AIR 30.0 y versiones anteriores, Flash Player 30.0 y versiones anteriores, Flash Lite 4
Flex 4.6 y versiones anteriores, Flash Pro CS6 y versiones anteriores
Ocultar filtros
 

Sentencias, palabras clave y directivas 

Paquetesx

Nivel superior
adobe.utils
air.desktop
air.net
air.update
air.update.events
coldfusion.air
coldfusion.air.errors
coldfusion.air.events
coldfusion.service
coldfusion.service.events
coldfusion.service.mxml
com.adobe.acm.solutions.authoring.domain.extensions
com.adobe.acm.solutions.ccr.domain.extensions
com.adobe.consulting.pst.vo
com.adobe.dct.component
com.adobe.dct.component.datadictionary
com.adobe.dct.component.datadictionaryElement
com.adobe.dct.component.dataElementsPanel
com.adobe.dct.component.toolbars
com.adobe.dct.event
com.adobe.dct.exp
com.adobe.dct.model
com.adobe.dct.service
com.adobe.dct.service.provider
com.adobe.dct.transfer
com.adobe.dct.util
com.adobe.dct.view
com.adobe.ep.taskmanagement.domain
com.adobe.ep.taskmanagement.event
com.adobe.ep.taskmanagement.filter
com.adobe.ep.taskmanagement.services
com.adobe.ep.taskmanagement.util
com.adobe.ep.ux.attachmentlist.component
com.adobe.ep.ux.attachmentlist.domain
com.adobe.ep.ux.attachmentlist.domain.events
com.adobe.ep.ux.attachmentlist.domain.renderers
com.adobe.ep.ux.attachmentlist.skin
com.adobe.ep.ux.attachmentlist.skin.renderers
com.adobe.ep.ux.content.event
com.adobe.ep.ux.content.factory
com.adobe.ep.ux.content.handlers
com.adobe.ep.ux.content.managers
com.adobe.ep.ux.content.model.asset
com.adobe.ep.ux.content.model.preview
com.adobe.ep.ux.content.model.relation
com.adobe.ep.ux.content.model.search
com.adobe.ep.ux.content.model.toolbar
com.adobe.ep.ux.content.search
com.adobe.ep.ux.content.services
com.adobe.ep.ux.content.services.load
com.adobe.ep.ux.content.services.permissions
com.adobe.ep.ux.content.services.preview
com.adobe.ep.ux.content.services.providers
com.adobe.ep.ux.content.services.query
com.adobe.ep.ux.content.services.relationships
com.adobe.ep.ux.content.services.search.lccontent
com.adobe.ep.ux.content.services.version
com.adobe.ep.ux.content.view
com.adobe.ep.ux.content.view.components.activate
com.adobe.ep.ux.content.view.components.grid
com.adobe.ep.ux.content.view.components.grid.hover
com.adobe.ep.ux.content.view.components.grid.hover.component
com.adobe.ep.ux.content.view.components.grid.renderers
com.adobe.ep.ux.content.view.components.relationships
com.adobe.ep.ux.content.view.components.review
com.adobe.ep.ux.content.view.components.search.renderers
com.adobe.ep.ux.content.view.components.searchpod
com.adobe.ep.ux.content.view.components.toolbar
com.adobe.ep.ux.content.view.components.toolbar.controlRenderers
com.adobe.ep.ux.content.view.components.version
com.adobe.ep.ux.documentsubmit.component
com.adobe.ep.ux.documentsubmit.domain
com.adobe.ep.ux.documentsubmit.skin
com.adobe.ep.ux.taskaction.component
com.adobe.ep.ux.taskaction.domain
com.adobe.ep.ux.taskaction.domain.events
com.adobe.ep.ux.taskaction.skin
com.adobe.ep.ux.taskdetails.component
com.adobe.ep.ux.taskdetails.domain
com.adobe.ep.ux.taskdetails.skin
com.adobe.ep.ux.tasklist.component
com.adobe.ep.ux.tasklist.domain
com.adobe.ep.ux.tasklist.skin
com.adobe.ep.ux.webdocumentviewer.domain
com.adobe.exm.expression
com.adobe.exm.expression.error
com.adobe.exm.expression.event
com.adobe.exm.expression.impl
com.adobe.fiber.runtime.lib
com.adobe.fiber.services
com.adobe.fiber.services.wrapper
com.adobe.fiber.styles
com.adobe.fiber.util
com.adobe.fiber.valueobjects
com.adobe.gravity.binding
com.adobe.gravity.context
com.adobe.gravity.flex.bundleloader
com.adobe.gravity.flex.progress
com.adobe.gravity.flex.serviceloader
com.adobe.gravity.framework
com.adobe.gravity.init
com.adobe.gravity.service.bundleloader
com.adobe.gravity.service.logging
com.adobe.gravity.service.manifest
com.adobe.gravity.service.progress
com.adobe.gravity.tracker
com.adobe.gravity.ui
com.adobe.gravity.utility
com.adobe.gravity.utility.async
com.adobe.gravity.utility.error
com.adobe.gravity.utility.events
com.adobe.gravity.utility.factory
com.adobe.gravity.utility.flex.async
com.adobe.gravity.utility.logging
com.adobe.gravity.utility.message
com.adobe.gravity.utility.sequence
com.adobe.gravity.utility.url
com.adobe.guides.control
com.adobe.guides.domain
com.adobe.guides.i18n
com.adobe.guides.spark.components.skins
com.adobe.guides.spark.components.skins.mx
com.adobe.guides.spark.headers.components
com.adobe.guides.spark.headers.skins
com.adobe.guides.spark.layouts.components
com.adobe.guides.spark.layouts.skins
com.adobe.guides.spark.navigators.components
com.adobe.guides.spark.navigators.renderers
com.adobe.guides.spark.navigators.skins
com.adobe.guides.spark.util
com.adobe.guides.spark.wrappers.components
com.adobe.guides.spark.wrappers.skins
com.adobe.guides.submit
com.adobe.icc.dc.domain
com.adobe.icc.dc.domain.factory
com.adobe.icc.editors.events
com.adobe.icc.editors.handlers
com.adobe.icc.editors.managers
com.adobe.icc.editors.model
com.adobe.icc.editors.model.config
com.adobe.icc.editors.model.el
com.adobe.icc.editors.model.el.operands
com.adobe.icc.editors.model.el.operators
com.adobe.icc.enum
com.adobe.icc.external.dc
com.adobe.icc.obj
com.adobe.icc.services
com.adobe.icc.services.category
com.adobe.icc.services.config
com.adobe.icc.services.download
com.adobe.icc.services.export
com.adobe.icc.services.external
com.adobe.icc.services.formbridge
com.adobe.icc.services.fragmentlayout
com.adobe.icc.services.layout
com.adobe.icc.services.letter
com.adobe.icc.services.locator
com.adobe.icc.services.module
com.adobe.icc.services.render
com.adobe.icc.services.submit
com.adobe.icc.services.user
com.adobe.icc.token
com.adobe.icc.vo
com.adobe.icc.vo.render
com.adobe.icomm.assetplacement.controller
com.adobe.icomm.assetplacement.controller.utils
com.adobe.icomm.assetplacement.data
com.adobe.icomm.assetplacement.model
com.adobe.livecycle.assetmanager.client
com.adobe.livecycle.assetmanager.client.event
com.adobe.livecycle.assetmanager.client.handler
com.adobe.livecycle.assetmanager.client.managers
com.adobe.livecycle.assetmanager.client.model
com.adobe.livecycle.assetmanager.client.model.cms
com.adobe.livecycle.assetmanager.client.service
com.adobe.livecycle.assetmanager.client.service.search
com.adobe.livecycle.assetmanager.client.service.search.cms
com.adobe.livecycle.assetmanager.client.utils
com.adobe.livecycle.content
com.adobe.livecycle.rca.model
com.adobe.livecycle.rca.model.constant
com.adobe.livecycle.rca.model.document
com.adobe.livecycle.rca.model.participant
com.adobe.livecycle.rca.model.reminder
com.adobe.livecycle.rca.model.stage
com.adobe.livecycle.rca.service
com.adobe.livecycle.rca.service.core
com.adobe.livecycle.rca.service.core.delegate
com.adobe.livecycle.rca.service.process
com.adobe.livecycle.rca.service.process.delegate
com.adobe.livecycle.rca.token
com.adobe.livecycle.ria.security.api
com.adobe.livecycle.ria.security.service
com.adobe.mosaic.layouts
com.adobe.mosaic.layouts.dragAndDrop
com.adobe.mosaic.layouts.interfaces
com.adobe.mosaic.mxml
com.adobe.mosaic.om.constants
com.adobe.mosaic.om.events
com.adobe.mosaic.om.impl
com.adobe.mosaic.om.interfaces
com.adobe.mosaic.skinning
com.adobe.mosaic.sparklib.editors
com.adobe.mosaic.sparklib.optionMenu
com.adobe.mosaic.sparklib.scrollableMenu
com.adobe.mosaic.sparklib.scrollableMenu.skins
com.adobe.mosaic.sparklib.tabLayout
com.adobe.mosaic.sparklib.tabLayout.events
com.adobe.mosaic.sparklib.tabLayout.layouts
com.adobe.mosaic.sparklib.tabLayout.skins
com.adobe.mosaic.sparklib.text
com.adobe.mosaic.sparklib.util
com.adobe.solutions.acm.authoring.presentation
com.adobe.solutions.acm.authoring.presentation.actionbar
com.adobe.solutions.acm.authoring.presentation.common
com.adobe.solutions.acm.authoring.presentation.events
com.adobe.solutions.acm.authoring.presentation.fragment
com.adobe.solutions.acm.authoring.presentation.letter
com.adobe.solutions.acm.authoring.presentation.letter.data
com.adobe.solutions.acm.authoring.presentation.preview
com.adobe.solutions.acm.authoring.presentation.rte
com.adobe.solutions.acm.ccr.presentation
com.adobe.solutions.acm.ccr.presentation.contentcapture
com.adobe.solutions.acm.ccr.presentation.contentcapture.events
com.adobe.solutions.acm.ccr.presentation.contentcapture.preview
com.adobe.solutions.acm.ccr.presentation.datacapture
com.adobe.solutions.acm.ccr.presentation.datacapture.renderers
com.adobe.solutions.acm.ccr.presentation.pdf
com.adobe.solutions.exm
com.adobe.solutions.exm.authoring
com.adobe.solutions.exm.authoring.components.controls
com.adobe.solutions.exm.authoring.components.toolbars
com.adobe.solutions.exm.authoring.domain
com.adobe.solutions.exm.authoring.domain.expression
com.adobe.solutions.exm.authoring.domain.impl
com.adobe.solutions.exm.authoring.domain.method
com.adobe.solutions.exm.authoring.domain.variable
com.adobe.solutions.exm.authoring.enum
com.adobe.solutions.exm.authoring.events
com.adobe.solutions.exm.authoring.model
com.adobe.solutions.exm.authoring.renderer
com.adobe.solutions.exm.authoring.view
com.adobe.solutions.exm.expression
com.adobe.solutions.exm.impl
com.adobe.solutions.exm.impl.method
com.adobe.solutions.exm.method
com.adobe.solutions.exm.mock
com.adobe.solutions.exm.mock.method
com.adobe.solutions.exm.runtime
com.adobe.solutions.exm.runtime.impl
com.adobe.solutions.exm.variable
com.adobe.solutions.prm.constant
com.adobe.solutions.prm.domain
com.adobe.solutions.prm.domain.factory
com.adobe.solutions.prm.domain.impl
com.adobe.solutions.prm.domain.manager
com.adobe.solutions.prm.presentation.asset
com.adobe.solutions.prm.presentation.constant
com.adobe.solutions.prm.presentation.document
com.adobe.solutions.prm.presentation.event
com.adobe.solutions.prm.presentation.file
com.adobe.solutions.prm.presentation.project
com.adobe.solutions.prm.presentation.team
com.adobe.solutions.prm.presentation.util
com.adobe.solutions.prm.service
com.adobe.solutions.prm.services.impl
com.adobe.solutions.prm.vo
com.adobe.solutions.rca.constant
com.adobe.solutions.rca.domain
com.adobe.solutions.rca.domain.common
com.adobe.solutions.rca.domain.factory
com.adobe.solutions.rca.domain.impl
com.adobe.solutions.rca.domain.impl.manager
com.adobe.solutions.rca.domain.manager
com.adobe.solutions.rca.presentation
com.adobe.solutions.rca.presentation.comment
com.adobe.solutions.rca.presentation.constant
com.adobe.solutions.rca.presentation.event
com.adobe.solutions.rca.presentation.gantt
com.adobe.solutions.rca.presentation.gantt.ruler
com.adobe.solutions.rca.presentation.template
com.adobe.solutions.rca.presentation.template.audit
com.adobe.solutions.rca.presentation.template.definition
com.adobe.solutions.rca.presentation.template.documents
com.adobe.solutions.rca.presentation.template.stages
com.adobe.solutions.rca.presentation.util
com.adobe.solutions.rca.service
com.adobe.solutions.rca.services.impl
com.adobe.solutions.rca.vo
com.adobe.solutions.rca.vo.um
com.adobe.viewsource
fl.accessibility
fl.containers
fl.controls
fl.controls.dataGridClasses
fl.controls.listClasses
fl.controls.progressBarClasses
fl.core
fl.data
fl.display
fl.events
fl.ik
fl.lang
fl.livepreview
fl.managers
fl.motion
fl.motion.easing
fl.rsl
fl.text
fl.transitions
fl.transitions.easing
fl.video
flash.accessibility
flash.concurrent
flash.crypto
flash.data
flash.desktop
flash.display
flash.display3D
flash.display3D.textures
flash.errors
flash.events
flash.external
flash.filesystem
flash.filters
flash.geom
flash.globalization
flash.html
flash.media
flash.net
flash.net.dns
flash.net.drm
flash.notifications
flash.permissions
flash.printing
flash.profiler
flash.sampler
flash.security
flash.sensors
flash.system
flash.text
flash.text.engine
flash.text.ime
flash.ui
flash.utils
flash.xml
flashx.textLayout
flashx.textLayout.compose
flashx.textLayout.container
flashx.textLayout.conversion
flashx.textLayout.edit
flashx.textLayout.elements
flashx.textLayout.events
flashx.textLayout.factory
flashx.textLayout.formats
flashx.textLayout.operations
flashx.textLayout.utils
flashx.undo
ga.controls
ga.layouts
ga.model
ga.uiComponents
ga.util
ga.views
ga.wrappers
lc.foundation
lc.foundation.domain
lc.foundation.events
lc.foundation.ui
lc.foundation.util
lc.preloader
lc.procmgmt
lc.procmgmt.commands
lc.procmgmt.domain
lc.procmgmt.events
lc.procmgmt.formbridge
lc.procmgmt.impl
lc.procmgmt.ui.attachments
lc.procmgmt.ui.controls
lc.procmgmt.ui.controls.card
lc.procmgmt.ui.controls.renderer
lc.procmgmt.ui.help
lc.procmgmt.ui.layout
lc.procmgmt.ui.presentationmodel
lc.procmgmt.ui.process
lc.procmgmt.ui.search
lc.procmgmt.ui.startpoint
lc.procmgmt.ui.task
lc.procmgmt.ui.task.form
lc.procmgmt.ui.task.form.commands
lc.procmgmt.ui.tracking
mx.accessibility
mx.automation
mx.automation.air
mx.automation.delegates
mx.automation.delegates.advancedDataGrid
mx.automation.delegates.charts
mx.automation.delegates.containers
mx.automation.delegates.controls
mx.automation.delegates.controls.dataGridClasses
mx.automation.delegates.controls.fileSystemClasses
mx.automation.delegates.core
mx.automation.delegates.flashflexkit
mx.automation.events
mx.binding
mx.binding.utils
mx.charts
mx.charts.chartClasses
mx.charts.effects
mx.charts.effects.effectClasses
mx.charts.events
mx.charts.renderers
mx.charts.series
mx.charts.series.items
mx.charts.series.renderData
mx.charts.styles
mx.collections
mx.collections.errors
mx.containers
mx.containers.accordionClasses
mx.containers.dividedBoxClasses
mx.containers.errors
mx.containers.utilityClasses
mx.controls
mx.controls.advancedDataGridClasses
mx.controls.dataGridClasses
mx.controls.listClasses
mx.controls.menuClasses
mx.controls.olapDataGridClasses
mx.controls.scrollClasses
mx.controls.sliderClasses
mx.controls.textClasses
mx.controls.treeClasses
mx.controls.videoClasses
mx.core
mx.core.windowClasses
mx.data
mx.data.crypto
mx.data.errors
mx.data.events
mx.data.messages
mx.data.mxml
mx.data.offline.errors
mx.data.utils
mx.effects
mx.effects.easing
mx.effects.effectClasses
mx.events
mx.filters
mx.flash
mx.formatters
mx.geom
mx.graphics
mx.graphics.codec
mx.graphics.shaderClasses
mx.logging
mx.logging.errors
mx.logging.targets
mx.managers
mx.messaging
mx.messaging.channels
mx.messaging.config
mx.messaging.errors
mx.messaging.events
mx.messaging.management
mx.messaging.messages
mx.modules
mx.netmon
mx.olap
mx.olap.aggregators
mx.preloaders
mx.printing
mx.resources
mx.rpc
mx.rpc.events
mx.rpc.http
mx.rpc.http.mxml
mx.rpc.livecycle
mx.rpc.mxml
mx.rpc.remoting
mx.rpc.remoting.mxml
mx.rpc.soap
mx.rpc.soap.mxml
mx.rpc.wsdl
mx.rpc.xml
mx.skins
mx.skins.halo
mx.skins.spark
mx.skins.wireframe
mx.skins.wireframe.windowChrome
mx.states
mx.styles
mx.utils
mx.validators
org.osmf.containers
org.osmf.display
org.osmf.elements
org.osmf.events
org.osmf.layout
org.osmf.logging
org.osmf.media
org.osmf.metadata
org.osmf.net
org.osmf.net.dvr
org.osmf.net.httpstreaming
org.osmf.net.metrics
org.osmf.net.qos
org.osmf.net.rtmpstreaming
org.osmf.net.rules
org.osmf.traits
org.osmf.utils
spark.accessibility
spark.automation.delegates
spark.automation.delegates.components
spark.automation.delegates.components.gridClasses
spark.automation.delegates.components.mediaClasses
spark.automation.delegates.components.supportClasses
spark.automation.delegates.skins.spark
spark.automation.events
spark.collections
spark.components
spark.components.calendarClasses
spark.components.gridClasses
spark.components.mediaClasses
spark.components.supportClasses
spark.components.windowClasses
spark.core
spark.effects
spark.effects.animation
spark.effects.easing
spark.effects.interpolation
spark.effects.supportClasses
spark.events
spark.filters
spark.formatters
spark.formatters.supportClasses
spark.globalization
spark.globalization.supportClasses
spark.layouts
spark.layouts.supportClasses
spark.managers
spark.modules
spark.preloaders
spark.primitives
spark.primitives.supportClasses
spark.skins
spark.skins.mobile
spark.skins.mobile.supportClasses
spark.skins.spark
spark.skins.spark.mediaClasses.fullScreen
spark.skins.spark.mediaClasses.normal
spark.skins.spark.windowChrome
spark.skins.wireframe
spark.skins.wireframe.mediaClasses
spark.skins.wireframe.mediaClasses.fullScreen
spark.transitions
spark.utils
spark.validators
spark.validators.supportClasses
xd.core.axm.enterprise.view.components
xd.core.axm.enterprise.view.skins
xd.core.axm.view.components
xd.core.axm.view.components.support

Elementos del lenguaje

Constantes globales
Funciones globales
Operadores
Sentencias, palabras clave y directivas
Tipos especiales

Apéndices

Novedades
Errores del compilador
Advertencias del compilador
Errores en tiempo de ejecución
Migración a ActionScript 3
Conjuntos de caracteres admitidos
Solo etiquetas MXML
Elementos Motion XML
Etiquetas de texto temporizado
Lista de elementos desfasados
Constantes de implementación de accesibilidad
Cómo utilizar ejemplos de ActionScript
Avisos legales

Clases x

AAAARecord    
AbandonCommand
ABRUtils
AbstractConsumer
AbstractEntityMetadata
AbstractEvent
AbstractInvoker
AbstractMessage
AbstractOperation
AbstractOperation
AbstractParticipant
AbstractProducer
AbstractSearchFilterVO
AbstractService
AbstractServiceWrapper
AbstractStage
AbstractTarget
AbstractWebService
AccConst
Accelerometer
AccelerometerEvent
Accessibility
AccessibilityImplementation
AccessibilityProperties
AccessibleButton
AccessibleText
AccessPrivileges
AccImpl
AccImpl
Accordion
AccordionAutomationImpl
AccordionHeader
AccordionHeaderAccImpl
AccordionHeaderSkin
AccordionHeaderSkin
AccordionHeaderSkin
AccordionNav
AccordionSkin
AcknowledgeMessage
ACMRelationshipManager
ActionBar
ActionBar    
ActionBarButtonSkinBase
ActionBarDefaultButtonAppearance    
ActionBarSkin    
ActionEffectInstance
ActionRenderer
ActionScriptVersion
ActionSelectedEvent
ActivationBrowser
ActivatorSkin
ActiveContentEvent
ActiveDataEvent
ActivityEvent
ActualBitrateMetric
AddAction
AddActionInstance
AddApprovalStageParticipant
AddAssetPopUp
AddChild
AddChildAction
AddChildActionInstance
AddCreatorDialog
AddItemAction
AddItemActionInstance
AddItems
AddPanelButton
AddPanelEvent
AddRemoveEffectTargetFilter
AddReviewStageParticipant
AddServiceEvent
AddStageParticipant
AddTileEvent
AddViewEvent
AddViewManagerEvent
AdjustColor
AdvanceDataElementsPanel
AdvancedChannelSet
AdvancedDataGrid
AdvancedDataGridAccImpl
AdvancedDataGridAutomationImpl
AdvancedDataGridBase
AdvancedDataGridBaseEx
AdvancedDataGridBaseExAutomationImpl
AdvancedDataGridBaseSelectionData
AdvancedDataGridColumn
AdvancedDataGridColumnGroup
AdvancedDataGridDragProxy
AdvancedDataGridEvent
AdvancedDataGridEventReason
AdvancedDataGridGroupItemRenderer
AdvancedDataGridGroupItemRendererAutomationImpl
AdvancedDataGridHeaderHorizontalSeparator
AdvancedDataGridHeaderInfo
AdvancedDataGridHeaderRenderer
AdvancedDataGridHeaderShiftEvent
AdvancedDataGridItemRenderer
AdvancedDataGridItemRendererAutomationImpl
AdvancedDataGridItemSelectEvent
AdvancedDataGridListData
AdvancedDataGridRendererDescription
AdvancedDataGridRendererProvider
AdvancedDataGridSortItemRenderer
AdvancedListBase
AdvancedListBaseAutomationImpl
AdvancedListBaseContentHolderAutomationImpl
AdvancedSearchPod
AdvancedStyleClient
AfterUpSwitchBufferBandwidthRule
AggregatingToken
AggregatingTokenError
AirDragManagerAutomationHandler
AIREvent    
AirFunctionsHelper
Alert
AlertAccImpl
AlertAutomationImpl
AlertFormatter
AlertFormAutomationImpl
AlignmentArea
AllRuntimeSparkControls
AlternativeAudioEvent
AlternativeAudioTrait
AMFChannel
AndOperator
Animate
AnimateColor
AnimateColorInstance
AnimateFilter
AnimateFilterInstance
AnimateInstance
AnimateProperty
AnimatePropertyInstance
AnimateTransform
AnimateTransform3D
AnimateTransformInstance
AnimateTransitionShader
AnimateTransitionShaderInstance
Animation
Animator
Animator3D
AnimatorBase
AnimatorFactory
AnimatorFactory3D
AnimatorFactoryBase
AnimatorFactoryUniversal
AnimatorUniversal
AnnotationParseEvent
AntiAliasType
Application
Application
Application
ApplicationAutomationImpl
ApplicationBackground
ApplicationConstants
ApplicationControlBar
ApplicationDomain
ApplicationDomainTarget
ApplicationListItem
ApplicationSkin
ApplicationSkin
ApplicationSpecifier
ApplicationTitleBarBackgroundSkin    
ApplicationUpdater    
ApplicationUpdaterUI    
ApplyElementIDOperation
ApplyElementStyleNameOperation
ApplyElementTypeNameOperation
ApplyElementUserStyleOperation
ApplyFormatOperation
ApplyFormatToElementOperation
ApplyLinkOperation
ApplyTCYOperation
ApprovalStage
ApprovalStage
Approver
Approver
ApproverCollection
ApproverStatus
ApproverStatus
ApproverVO
AreaChart
AreaRenderer
AreaSeries
AreaSeriesAutomationImpl
AreaSeriesItem
AreaSeriesRenderData
AreaSet
ARecord    
ArgumentError
arguments
Array
ArrayCollection
ArrayList
ArrayUtil
ArrowDirection    
Asset
AssetAction
AssetAction
AssetActionCompleteEvent
AssetActionCompleteEvent
AssetActionEvent
AssetActionEvent
AssetActionsChangeEvent
AssetDetailsPod
AssetEvent
AssetExplorerServiceDelegate
AssetFocusEvent
AssetHandlerRegistry
AssetHandlerRegistry
AssetManager
AssetManager
AssetManagerView
AssetModel
AssetPod
AssetPropertiesEditor
AssetPropertyDescriptor
AssetPropertyDescriptor
AssetQueryServiceDelegate
AssetReviewPod
AssetTypeDescriptor
AssetTypeDescriptor
AssetValidationEvent
AssetValidationFaultType
AssetVersionPod
AssetVO
Assignment
AssignmentConstants
AsyncErrorEvent
AsyncListView
AsyncMessage
AsyncRequest
AsyncResponder
AsyncToken
AsyncTokenResponder
AsyncTokenWrapper
Attachment
AttachmentCommand
AttachmentEvent
AttachmentHeader
AttachmentHeaderBase
AttachmentHeaderModel
AttachmentIconRenderer
AttachmentIconRendererSkin
AttachmentInfo
AttachmentList
AttachmentList
AttachmentListComponent
AttachmentListModel
AttachmentListSkin
AttachmentLoader
AttachmentPermissions
Attachments
AttachmentsModel
Attribute
AudioDecoder
AudioDeviceManager
AudioElement
AudioEvent
AudioOutputChangeEvent
AudioOutputChangeReason
AudioPlaybackMode    
AudioTrait
AuditActionVO
AuditAttributeVO
AuditLevel
AuditLevel
AuditLevelVO
AuditManager
AuditMetaInfoVO
AuditModuleVO
Auditor
AugmentedError
AugmentedErrorEvent
AuthenticatingApplication
AuthenticationEvent
AuthenticationMethod
AuthFailureCode
AuthOptions
Author
AuthorStatus
AuthorVO
AuthResult
AuthStatus
AutoCapitalize    
AutoLayoutEvent
Automation
AutomationAirEvent
AutomationClass
AutomationDragEvent
AutomationDragEventWithPositionInfo
AutomationError
AutomationEvent
AutomationEventDescriptor
AutomationFlexNativeMenuEvent
AutomationHelper
AutomationID
AutomationIDPart
AutomationManager
AutomationMethodDescriptor
AutomationPropertyDescriptor
AutomationRecordEvent
AutomationReplayEvent
AvailablePropertyIterator
AvailableQualityLevelsMetric
AVDictionaryDataEvent
AverageAggregator
AVHTTPStatusEvent
AVLoader
AVM1Movie
AVNetworkingParams
AVPauseAtPeriodEndEvent
AVTagData
AVURLLoader
AVURLStream
AxisBase
AxisLabel
AxisLabelSet
AxisRenderer
AxisRendererAutomationImpl
AXMAccordion
AXMAccordionItemVO
AXMAccordionSegment
AXMBreadCrumb
AXMButton
AXMButtonBar
AXMButtonBarButton
AXMCheckBox
AXMComboBox
AXMDropDownList
AXMDropDownListBase
AXMEnterpriseAccordionSegmentSkin
AXMEnterpriseAccordionSkin
AXMEnterpriseAssetTabBar
AXMEnterpriseAssetTabBarButtonSkin
AXMEnterpriseAssetTabBarSkin
AXMEnterpriseAssetViewTabBar
AXMEnterpriseAssetViewTabBarButtonSkin
AXMEnterpriseAssetViewTabBarSkin
AXMEnterpriseBreadCrumbButtonSkin
AXMEnterpriseBreadCrumbFocusSkin
AXMEnterpriseBreadCrumbSkin
AXMEnterpriseButtonBarFirstButtonSkin
AXMEnterpriseButtonBarLastButtonSkin
AXMEnterpriseButtonBarMiddleButtonSkin
AXMEnterpriseButtonBarSkin
AXMEnterpriseButtonSkin
AXMEnterpriseCheckboxSkin
AXMEnterpriseCheckboxSmallSkin
AXMEnterpriseClosableTabBarButtonSkin
AXMEnterpriseClosableTabBarSkin
AXMEnterpriseCloseButtonSkin
AXMEnterpriseComboBoxButtonSkin
AXMEnterpriseComboBoxSkin
AXMEnterpriseComboBoxTextInputSkin
AXMEnterpriseDropDownListButtonSkin
AXMEnterpriseDropDownListItemRenderer
AXMEnterpriseDropDownListSkin
AXMEnterpriseFocusSkin
AXMEnterpriseFooterSkin
AXMEnterpriseGridHeaderRenderer
AXMEnterpriseGridSkin
AXMEnterpriseHeaderBarSkin
AXMEnterpriseHeaderButtonBar
AXMEnterpriseHScrollBarLargeSkin
AXMEnterpriseHScrollbarNoControlsSkin
AXMEnterpriseHScrollbarSkin
AXMEnterpriseHScrollbarThumbSkin
AXMEnterpriseHScrollbarTrackNoControlsSkin
AXMEnterpriseHScrollbarTrackSkin
AXMEnterpriseIconButtonSkin
AXMEnterpriseLargeButtonSkin
AXMEnterpriseLargeToggleButtonSkin
AXMEnterpriseNavigationButtonBarSkin
AXMEnterpriseNumericStepperDecrementButtonSkin
AXMEnterpriseNumericStepperIncrementButtonSkin
AXMEnterpriseNumericStepperSkin
AXMEnterpriseNumericStepperTextInputSkin
AXMEnterprisePanelSkin
AXMEnterpriseProgressSpinnerSkin
AXMEnterpriseQuietButtonSkin
AXMEnterpriseQuietHeaderBarButton
AXMEnterpriseQuietLargeButtonSkin
AXMEnterpriseQuietLargeDropDownListButtonSkin
AXMEnterpriseRadioButtonSkin
AXMEnterpriseResizeHandleSkin
AXMEnterpriseScrollDownArrowSkin
AXMEnterpriseScrollLeftArrowSkin
AXMEnterpriseScrollRightArrowSkin
AXMEnterpriseScrollUpArrowSkin
AXMEnterpriseSlideToggleButton
AXMEnterpriseSplitActionButtonSkin
AXMEnterpriseSplitActionPopUpButtonSkin
AXMEnterpriseSplitActionSkin
AXMEnterpriseTabBarButtonSkin
AXMEnterpriseTabBarSkin
AXMEnterpriseTextAreaSkin
AXMEnterpriseTextInputSkin
AXMEnterpriseTitleWindowSkin
AXMEnterpriseToggleButtonSkin
AXMEnterpriseToolBarBottomSkin
AXMEnterpriseToolBarButtonBarFirstButtonSkin
AXMEnterpriseToolBarButtonBarLastButtonSkin
AXMEnterpriseToolBarButtonBarMiddleButtonSkin
AXMEnterpriseToolbarButtonBarSkin
AXMEnterpriseToolBarTopSkin
AXMEnterpriseViewModeButtonBarButtonSkin
AXMEnterpriseViewModeButtonBarSkin
AXMEnterpriseVScrollbarNoControlsSkin
AXMEnterpriseVScrollbarSkin
AXMEnterpriseVScrollbarThumbSkin
AXMEnterpriseVScrollbarTrackNoControlsSkin
AXMEnterpriseVScrollbarTrackSkin
AXMHeaderBar
AXMHScrollBar
AXMLightItemRenderer
AXMList
AXMPopUp
AXMProgressBar
AXMProgressSpinner
AXMResizableContainer
AXMRichTextEditor
AXMRichTextEditorControlBar
AXMScroller
AXMSplitActionButton
AXMSwitch
AXMTabBar
AXMTabBarButton
AXMTitleWindow
AXMToggleButton
AXMToolPopUp
AXMToolPopUpDropDownController
AXMVerticalDivider
AXMVScrollBar

Las sentencias son elementos del lenguaje que realizan o especifican una acción en tiempo de ejecución. Por ejemplo, la sentencia return devuelve un valor de resultado de la función en la que se ejecuta. La sentencia if evalúa una condición para determinar la siguiente acción que se debe efectuar. La sentencia switch crea una estructura ramificada para sentencias de ActionScript.

Las palabras clave de atributo modifican el significado de las definiciones y pueden aplicarse a las definiciones de clases, variables, funciones y espacios de nombre. Las palabras clave de definiciones se utilizan para definir entidades tales como variables, funciones, clases e interfaces. Las palabras clave de expresiones principales representan valores literales. Para ver una lista con las palabras reservadas, consulte Aprendizaje de ActionScript 3.0.

Entre las directivas se incluyen sentencias y definiciones que pueden tener un efecto en tiempo de compilación o ejecución. Las directivas que no son ni sentencias ni definiciones se etiquetan como directivas en la siguiente tabla.


 Sentencia
 breakAparece en un bucle (for, for..in, for each..in, do..while o while) o en un bloque de sentencias asociadas con un determinado caso de una sentencia switch.
 caseDefine el destino del salto para la sentencia switch.
 continueSalta por encima de todas las sentencias restantes en el bucle más interior e inicia la siguiente repetición del bucle como si se hubiera pasado el control hasta el final del bucle de la forma habitual.
 defaultDefine el caso predeterminado de una sentencia switch.
 do..whileSimilar al bucle while, con la diferencia de que las sentencias se ejecutan una vez antes de la evaluación inicial de la condición.
 elseEspecifica las sentencias que se ejecutarán si la condición en la sentencia if devuelve false.
 forEvalúa la expresión init (inicializar) una vez y, a continuación, inicia una secuencia de reproducción indefinida.
 for..inRepite las propiedades dinámicas de un objeto o los elementos de un conjunto y ejecuta statement para cada propiedad o elemento.
 for each..inRepite los elementos de una colección y ejecuta statement por cada elemento.
 ifEvalúa una condición para determinar la siguiente sentencia que debe ejecutarse.
 labelAsocia una sentencia a un identificador al que puede hacerse referencia mediante break o continue.
 returnProvoca que la ejecución regrese inmediatamente a la función que origina la llamada.
 superInvoca la superclase o versión principal de un método o constructor.
 switchProvoca que el control se transfiera a una entre varias sentencias, dependiendo del valor de una expresión.
 throwGenera o emite un error que puede controlarse o capturarse mediante un bloque de código catch.
 try..catch..finallyIncluye un bloque de código en el que puede producirse un error y, a continuación, responde al error.
 whileEvalúa una condición y, si esta da como resultado true, ejecuta una o varias sentencias antes de volver a ejecutar el bucle para evaluar la condición nuevamente.
 withEstablece el objeto predeterminado que debe utilizarse para la ejecución de una o varias sentencias, lo que, en potencia, reduce la cantidad de código que es preciso escribir.
 Directiva
 default xml namespace La directiva default xml namespace establece el espacio de nombres predeterminado que debe utilizarse para objetos XML.
 importPone las clases y paquetes definidos externamente a disposición del código.
 includeIncluye el contenido del archivo especificado, como si los comandos del archivo formaran parte del script que realiza la llamada.
 use namespaceProvoca que los espacios de nombre especificados se añadan al conjunto de espacios de nombre abiertos.
 Espacio de nombres
 AS3Define métodos y propiedades de las clases principales de ActionScript que son propiedades fijas en lugar de propiedades prototipo.
 flash_proxyDefine métodos de la clase Proxy.
 object_proxyDefine métodos de la clase ObjectProxy.
 Palabra clave de atributo
 dynamicEspecifica que las instancias de una clase pueden poseer propiedades dinámicas añadidas en tiempo de ejecución.
 finalEspecifica que un método no puede ser sustituido o que una clase no puede ampliarse.
 internalEspecifica que una clase, variable, constante o función está disponible para cualquier origen de llamada dentro del mismo paquete.
 nativeEspecifica que Flash Player implementa una función o un método en código nativo.
 overrideEspecifica que un método reemplaza a un método heredado.
 privateEspecifica que una variable, constante, método o espacio de nombres esté únicamente disponible para la clase que lo define.
 protectedEspecifica que una variable, constante, método o espacio de nombres esté únicamente disponible para la clase que lo define y para las subclases de dicha clase.
 publicEspecifica que una clase, variable, constante o método está disponible para cualquier origen de llamada.
 staticEspecifica que una variable, constante o método pertenece a la clase y no las instancias de la clase.
 Palabra clave de definición
 ... (rest) parameterEspecifica que una función acepta cualquier número de argumentos separados por comas.
 classDefine una clase que permite crear instancias de objetos que comparten métodos y propiedades definidas por el usuario.
 constEspecifica una constante, que es una variable a la que puede asignarse un valor una sola vez.
 extendsDefine una clase que es una subclase de otra clase.
 functionConsta de un conjunto de sentencias que se definen para ejecutar una determinada tarea.
 getDefine un captador (getter), que es un método que puede leerse como una propiedad.
 implementsEspecifica que una clase implementa una o varias interfaces.
 interfaceDefine una interfaz.
 namespacePermite controlar la visibilidad de las definiciones.
 packagePermite organizar el código en grupos diferenciados que otros scripts pueden importar.
 setDefine un definidor (setter), que es un método que aparece en la interfaz pública como una propiedad.
 varEspecifica una variable.
 Palabra clave de expresión principal
 falseValor booleano que representa el valor false.
 nullValor especial que puede asignarse a las variables o ser devuelto por una función si no se ha proporcionado ningún dato.
 thisReferencia al objeto que contiene el método.
 trueValor booleano que representa el valor true.
Información sobre sentencias, palabras clave y directivas
... (rest) parameterPalabra clave de definición
Uso

function functionName(parameter0, parameter1, ...rest){ 
	// statement(s) 
} 

Especifica que una función acepta cualquier número de argumentos separados por comas. La lista de argumentos se convierte en un conjunto que está disponible en todo el cuerpo de la función. El nombre del conjunto se especifica después de los caracteres ... en la declaración del parámetro. El parámetro puede tener cualquier nombre que no sea una palabra reservada.

Si se utiliza con otros parámetros, la declaración del parámetro ... (rest) debe ser el último parámetro especificado. El conjunto del parámetro ... (rest) se llena de valores solo si el número de argumentos de la función supera el número de otros parámetros.

Cada argumento de la lista de argumentos separados por comas se sitúa en un elemento del conjunto. Si pasa una instancia de la clase Array, todo el conjunto se colocará en un único elemento del conjunto del parámetro ... (rest).

El uso de este parámetro hace que el objeto arguments no esté disponible. Aunque el parámetro ... (rest) ofrece la misma funcionalidad que el conjunto arguments y la propiedad arguments.length, no proporciona funcionalidad similar a la que ofrece arguments.callee. Asegúrese de que no necesita utilizar arguments.callee antes de utilizar el parámetro ... (rest).

Parámetros
rest:* — Identificador que representa el nombre del conjunto de argumentos pasados a la función. El parámetro no tiene que llamarse rest; puede tener cualquier nombre que no sea una palabra clave. Puede especificar el tipo de datos del parámetro \{\} (rest) como Array, aunque esto puede provocar confusión dado que el parámetro acepta una lista de valores separados por comas, lo que no coincide exactamente con una instancia de la clase Array.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo utiliza el parámetro ... (rest) en dos funciones diferentes. La primera función, traceParams, simplemente llama a la función trace() en cada uno de los argumentos del conjunto rest. La segunda función, average(), toma la lista de argumentos y devuelve el valor promedio. La segunda función también utiliza un nombre diferente, args, para el parámetro.
package {
	import flash.display.MovieClip;
	
	public class RestParamExample extends MovieClip {
		public function RestParamExample() {
			traceParams(100, 130, "two"); // 100,130,two
			trace(average(4, 7, 13));     // 8
		}
	}
}


function traceParams(... rest) {
 	trace(rest);
 }
 
function average(... args) : Number{
	var sum:Number = 0;
	for (var i:uint = 0; i < args.length; i++) {
		sum += args[i];
	}
	return (sum / args.length);
}

Elementos de API relacionados

AS3Espacio de nombres 

Define métodos y propiedades de las clases principales de ActionScript que son propiedades fijas en lugar de propiedades prototipo. Al establecer la opción de compilador "-as3" con el valor true (que es la configuración predeterminada en Flex Builder), el espacio de nombres AS3 se abre automáticamente para todas las clases principales. Esto significa que una instancia de una clase principal utilizará propiedades y métodos fijos en lugar de las versiones de dichas propiedades y métodos que se adjuntan al objeto prototipo de la clase. El uso de propiedades fijas normalmente proporciona un mejor rendimiento, pero supone la pérdida de compatibilidad retroactiva con la especificación del lenguaje ECMAScript edición 3 (ECMA-262).

Parámetros

Elementos de API relacionados

breakSentencia 
Uso

break [label]

Aparece en un bucle (for, for..in, for each..in, do..while o while) o dentro de un bloque de sentencias asociadas a un caso concreto en una sentencia switch. Cuando se utiliza en un bucle, la sentencia break ordena a Flash que omita el resto del cuerpo del bucle, detenga la acción de bucle y ejecute la sentencia a continuación de la sentencia de bucle. Cuando se utiliza en una sentencia switch, la sentencia break ordena a Flash que omita el resto de sentencias en ese bloque case y que salte a la primera sentencia que vaya a continuación de switch.

En bucles anidados, break solo omite el resto del bucle inmediato, no toda la serie de bucles anidados. Para salir de toda una serie de bucles anidados, debe usar label o try..catch..finally.

La sentencia break puede tener una etiqueta opcional que debe coincidir con una sentencia etiquetada exterior. El uso de una etiqueta que no coincide con la etiqueta de una sentencia exterior constituye un error de sintaxis. Las sentencias break etiquetadas pueden utilizarse para salir de varios niveles de sentencias de bucle anidadas, sentencias switch o block. Por ejemplo, consulte la entrada de la sentencia label.

Parámetros
label:* — El nombre de una etiqueta asociada con un objeto.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente utiliza break para salir de un bucle que, de otro modo, sería infinito:
var i:int = 0;
while (true) { 
	trace(i); 
	if (i >= 10) { 
		break; // this will terminate/exit the loop 
	} 
	i++; 
} 
/*
0 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10*/

Elementos de API relacionados

caseSentencia 
Uso

case jumpTarget: statements

Define el destino del salto para la sentencia switch. Si el parámetro jumpTarget es igual que el parámetro expression de la sentencia switch que utiliza igualdad estricta (===), Flash Player ejecutará sentencis en el parámetro statements hasta que encuentre una sentencia break o el final de la sentencia switch.

Si se utiliza la sentencia case fuera de una sentencia switch, se produce un error y el guion no se compila.

Parámetros
jumpTarget:* — Cualquier expresión.
statements:* — Las sentencias solo se ejecutan si jumpTarget coincide con la expresión condicional de la sentencia switch.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente define destinos de salto para la sentencia switch thisMonth. Si thisMonth es igual que la expresión de la sentencia case, se ejecutará la sentencia.
var thisMonth:int = new Date().getMonth(); 
switch (thisMonth) { 
	case 0 : 
		trace("January"); 
		break; 
	case 1 : 
		trace("February"); 
		break; 
	case 5 : 
	case 6 : 
	case 7 : 
		trace("Some summer month"); 
		break; 
	case 8 : 
		trace("September"); 
		break; 
	default : 
		trace("some other month"); 
}

Elementos de API relacionados

classPalabra clave de definición 
Uso

[dynamic] [public | internal] [final] class className [ extends superClass ] [ implements interfaceName[, interfaceName... ] ] { 
	// class definition here
}

Define una clase que permite crear instancias de objetos que comparten métodos y propiedades definidas por el usuario. Por ejemplo, si está desarrollando un sistema de seguimiento de facturas, podría crear una clase Invoice (factura) que definiera todos los métodos y propiedades que debe tener cada factura. Utilizaría entonces el comando new Invoice() para crear objetos Invoice.

Cada archivo de origen de ActionScript solo puede contener una clase visible para otros archivos de origen o scripts. La clase visible de forma externa puede ser pública o interna, y se debe definir dentro de una sentencia de paquete. Si incluye otras clases en el mismo archivo, se deben colocar fuera de la sentencia de paquete y al final del archivo.

El nombre de la clase visible de forma externa debe coincidir con el nombre del archivo de origen de ActionScript que contiene la clase. El nombre del archivo de origen debe ser el mismo que el de la clase con la extensión de archivo .as. Por ejemplo, si se denomina a una clase Student, el archivo que defina la clase debe denominarse Student.as.

No es posible anidar definiciones de clase, es decir, no se pueden definir clases adicionales en una definición de clase.

Puede definir un método constructor, que es un método que se ejecuta siempre que se crea una instancia nueva de la clase. El nombre del método constructor debe coincidir con el nombre de la clase. Si no define un método constructor, se creará un constructor predeterminado.

Para indicar que los objetos pueden añadir propiedades dinámicas y acceder a ellas en tiempo de ejecución, incluya la palabra clave dynamic antes de la sentencia class. Para declarar que una clase implemente una interfaz, utilice la palabra clave implements. Para crear subclases de una clase, utilice la palabra clave extends. (Una clase solo puede ampliar una clase pero puede implementar varias interfaces.) Puede utilizar las palabras clave implements y extends en una sola sentencia. En el siguiente ejemplo se muestran diversos usos habituales de las palabras claves implements y extends:

class C implements Interface_i, Interface_j // OK 
class C extends Class_d implements Interface_i, Interface_j // OK 
class C extends Class_d, Class_e // not OK 

Parámetros
className:Class — Nombre completo de la clase.

Ejemplo
Cómo utilizar este ejemplo
En el siguiente ejemplo se crea una clase llamada Plant. El constructor Plant utiliza dos parámetros.
// Filename Plant.as 
package {
  public class Plant { 
	// Define property names and types 
	private var _leafType:String; 
	private var _bloomSeason:String; 
	// Following line is constructor 
	// because it has the same name as the class 
	public function Plant(param_leafType:String, param_bloomSeason:String) { 
		// Assign passed values to properties when new Plant object is created 
		_leafType = param_leafType; 
		_bloomSeason = param_bloomSeason; 
	} 
	// Create methods to return property values, because best practice 
	// recommends against directly referencing a property of a class 
	public function get leafType():String { 
		return _leafType; 
	} 
	public function get bloomSeason():String { 
		return _bloomSeason; 
	} 
  }
}
En el script, utilice el operador new para crear un objeto Plant.
var pineTree:Plant = new Plant("Evergreen", "N/A"); 
// Confirm parameters were passed correctly 
trace(pineTree.leafType); 
trace(pineTree.bloomSeason); 

Elementos de API relacionados

constPalabra clave de definición 
Uso

const identifier = value 

Especifica una constante, que es una variable a la que puede asignarse un valor una sola vez.

Puede asignar una constante con strict typing añadiendo dos puntos (:) seguidos del tipo de datos.

Parámetros
identifier:* — Un identificador de la constante.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo muestra que se produce un error si se intenta asignar un valor a una constante más de una vez.
const MIN_AGE:int = 21;
MIN_AGE = 18; // error
El siguiente ejemplo muestra que, aunque la constante sea un conjunto, puede llamar a los métodos de la clase Array, incluido Array.push(). Sin embargo, no puede asignar un literal de nuevo conjunto.
const product_array:Array = new Array("Studio", "Dreamweaver", "Flash", "ColdFusion", "Contribute", "Breeze"); 
product_array.push("Flex"); // array operations are allowed
product_array = ["Other"];  // assignment is an error
trace(product_array); 

Elementos de API relacionados

continueSentencia 
Uso

continue [label]

Salta por encima de todas las sentencias restantes en el bucle más interior e inicia la siguiente repetición del bucle como si se hubiera pasado el control hasta el final del bucle de la forma habitual. La sentencia continue no tiene ningún efecto fuera de un bucle. En bucles anidados, utilice el parámetro opcional label para omitir otros bucles además del bucle más interior.

La sentencia continue puede tener una etiqueta opcional que debe coincidir con una sentencia etiquetada exterior. El uso de una etiqueta que no coincide con la etiqueta de una sentencia exterior constituye un error de sintaxis. Las sentencias continue etiquetadas pueden utilizarse para omitir varios niveles de sentencias de bucle anidadas.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
En el siguiente bucle while, la sentencia continue se utiliza para omitir el resto del cuerpo del bucle cuando se detecta un múltiplo de 3 y saltar a la parte superior del bucle, donde se comprueba la condición:
var i:int = 0; 
while (i < 10) { 
	if (i % 3 == 0) { 
		i++; 
		continue; 
	} 
	trace(i); 
	i++; 
}
En un bucle for, la sentencia continue también puede utilizarse para omitir el resto del cuerpo del bucle. En el siguiente ejemplo, si i % 3 es igual a 0, la sentencia trace(i) se omite:
 
for (var i:int = 0; i < 10; i++) { 
	if (i % 3 == 0) { 
		continue; 
	} 
	trace(i); 
}

Elementos de API relacionados

defaultSentencia 
Uso

default: statements 

Define el caso predeterminado de una sentencia switch. Las sentencias se ejecutan si el parámetro expression de la sentencia switch no equivale (mediante la operación de igualdad estricta [===]) a ninguno de los parámetros expression que siguen a las palabras claves case de una determinada sentencia switch.

No es necesario que la sentencia switch tenga una sentencia case default. Una sentencia case default no tiene que ser necesariamente la última de la lista. Si se utiliza la sentencia default fuera de una sentencia switch, se produce un error y el guion no se compila.

Parámetros
statements:* — Cualquier sentencia.

Ejemplo
Cómo utilizar este ejemplo
En el ejemplo siguiente, si el día de la semana es sábado (Saturday) o domingo (Sunday), no resultará aplicable ninguna de las sentencias case, por lo que la ejecución pasará a la sentencia default.
var dayOfWeek:int = new Date().getDay(); 
switch (dayOfWeek) { 
	case 1 : 
		trace("Monday"); 
		break; 
	case 2 : 
		trace("Tuesday"); 
		break; 
	case 3 : 
		trace("Wednesday"); 
		break; 
	case 4 : 
		trace("Thursday"); 
		break; 
	case 5 : 
		trace("Friday"); 
		break; 
	default : 
		trace("Weekend"); 
}

Elementos de API relacionados

default xml namespaceDirectiva 
Uso

default xml namespace = ns

La directiva default xml namespace establece el espacio de nombres predeterminado que debe utilizarse para objetos XML.

Si no establece default xml namespace, el espacio de nombres predeterminado será el espacio de nombres sin nombre asignado (con el URI establecido como una cadena vacía). El ámbito de una declaración default xml namespace está dentro de un bloque de función, al igual que el ámbito de una variable.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente muestra que el ámbito de default xml namespace es un bloque de función:
var nsDefault1:Namespace = new Namespace("http://www.example.com/namespaces/");
default xml namespace = nsDefault1;
	    
var x1:XML = ;
trace("x1 ns: " + x1.namespace());
			
scopeCheck();	

var x2:XML = ;
trace("x2 ns: " + x2.namespace());
		
function scopeCheck(): void {
	
	var x3:XML = ;
	trace("x3 ns: " + x3.namespace());
				
	var nsDefault2:Namespace = new Namespace("http://schemas.xmlsoap.org/soap/envelope/");
	default xml namespace = nsDefault2;
		    
	var x4:XML = ;
	trace("x4 ns: " + x4.namespace());

}
La salida de la sentencia trace() para este código es: x1 ns: http://www.example.com/namespaces/ x3 ns: x4 ns: http://schemas.xmlsoap.org/soap/envelope/ x2 ns: http://www.example.com/namespaces/ El siguiente ejemplo utiliza default xml namespace para asignar el espacio de nombres predeterminado. El segundo objeto XML (x2) no utiliza esta configuración porque x2 define su propio espacio de nombres predeterminado:
var nsDefault:Namespace = new Namespace("http://www.example.com/namespaces/");
default xml namespace = nsDefault;
            
var x1:XML = ;

trace(x1.namespace());
	// http://www.example.com/namespaces/

var x2:XML = ;
trace(x2.namespace());
	// http://www.w3.org/1999/XSL/Transform/

var x3:XML = ;
trace(x3.namespace());
	// http://www.example.com/namespaces/

Elementos de API relacionados

do..whileSentencia 
Uso

do { statement(s) } while (condition)

Similar al bucle while, con la diferencia de que las sentencias se ejecutan una vez antes de la evaluación inicial de la condición. Las sentencias a continuación solo se ejecutan si la condición da como resultado true.

Un bucle do..while garantiza que el código dentro del bucle se ejecutará al menos una vez. Aunque también puede lograr esto con un bucle while colocando una copia de las sentencias que se van a ejecutar antes de que se inicie el bucle while, muchos programadores consideran que es más fácil leer los bucles do..while.

Si la condición da siempre como resultado true, el bucle do..while es infinito. Si se introduce un bucle infinito, habrá problemas con Flash Player y finalmente se obtendrá un mensaje de advertencia o se bloqueará el reproductor. Siempre que sea posible, utilice un bucle for si sabe el número de veces que desea ejecutar el bucle. Aunque es fácil leer y depurar los bucles for no siempre pueden sustituir a los bucles do..while en todas las circunstancias.

Parámetros
condition:Boolean — La condición que se va a evaluar. Las sentencias dentro del bloque de código no se ejecutarán siempre que el parámetro condition sea true.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo utiliza el bucle do..while para evaluar si una condición es true, y realiza un seguimiento de myVar hasta que myVar es 5 o mayor. Cuando myVar sea 5 o un valor superior, el bucle finaliza.
var myVar:Number = 0; 
do { 
	trace(myVar); 
	myVar++; 
} 
while (myVar < 5); 
/*
0 
1 
2 
3 
4
*/

Elementos de API relacionados

dynamicPalabra clave de atributo 
Uso

dynamic class className { // class definition here }

Especifica que las instancias de una clase pueden poseer propiedades dinámicas añadidas en tiempo de ejecución. Si utiliza el atributo dynamic en una clase, puede añadir propiedades a instancias de dicha clase en tiempo de ejecución. Las clases que no están marcadas como dynamic se consideran cerradas, lo que significa que no es posible añadir propiedades a instancias de la clase.

Si una clase está cerrada (no es dinámica), los intentos de obtener o establecer propiedades en instancias de la clase dan como resultado un error. Si tiene el compilador establecido en modo estricto y especifica el tipo de datos al crear instancias, los intentos de añadir propiedades a objetos cerrados generarán un error del compilador; en caso contrario, se producirá un error de tiempo de ejecución.

Las subclases no heredan el atributo dynamic. Si amplía una clase dinámica, la subclase solo será dinámica si declara la subclase con el atributo dynamic.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
En el siguiente ejemplo se crean dos clases, una clase dinámica llamada Expando y una clase cerrada llamada Sealed que se utilizan en ejemplos posteriores.
package {

	dynamic class Expando  {
	}
	
	class Sealed {
	}
}
El siguiente código crea una instancia de la clase Expando y muestra que puede añadir propiedades a la instancia.
var myExpando:Expando = new Expando();
myExpando.prop1 = "new";
trace(myExpando.prop1); // new
El siguiente código crea una instancia de la clase Sealed y muestra que los intentos de añadir una propiedad dan como resultado un error.
var mySealed:Sealed = new Sealed();
mySealed.prop1 = "newer"; // error

Elementos de API relacionados

elseSentencia 
Uso

if (condition) { 
	// statement(s)
} 
else {
	// statement(s)
}

Especifica las sentencias que se ejecutarán si la condición en la sentencia if devuelve false. Las llaves ({}) que encierran las sentencias que va a ejecutar la sentencia else no son necesarias si solo se va a ejecutar una sentencia.

Parámetros
condition:Boolean — Expresión que da como resultado true o false.

Ejemplo
Cómo utilizar este ejemplo
En el ejemplo siguiente se utiliza la condición else para comprobar si la variable age_txt es mayor o menor que 18:
if (age_txt.text>=18) { 
	trace("welcome, user"); 
} 
else { 
	trace("sorry, junior"); 
	userObject.minor = true; 
	userObject.accessAllowed = false;
}
En el ejemplo siguiente las llaves ({}) no son necesarias porque solo una sentencia sigue a la sentencia else:
if (age_txt.text>18) { 
	trace("welcome, user");
} 
else trace("sorry, junior");
El ejemplo siguiente utiliza una combinación de las sentencias if y else para comparar score_txt con un valor especificado:
if (score_txt.text>90) { 
	trace("A"); 
} 
else if (score_txt.text>75) { 
	trace("B"); 
} 
else if (score_txt.text>60) { 
	trace("C"); 
} 
else { 
	trace("F"); 
}

Elementos de API relacionados

extendsPalabra clave de definición 
Uso

class className extends otherClassName {}
interface interfaceName extends otherInterfaceName {} 

Define una clase que es una subclase de otra clase. La subclase hereda todos los métodos, propiedades, funciones, etc. definidos en la superclase. Las clases marcadas como final no pueden ampliarse.

También puede utilizar la palabra clave extends para ampliar una interfaz. Una interfaz que amplía otra interfaz incluye todas las declaraciones del método de la interfaz original.

Parámetros
className:Class — El nombre de la clase que se define.

Ejemplo
Cómo utilizar este ejemplo
En el ejemplo siguiente, la clase Car amplía la clase Vehicle de modo que se hereden todos sus métodos, propiedades y funciones. Si el script crea una instancia de un objeto Car, podrán utilizarse los métodos de la clase Car y de la clase Vehicle. El ejemplo siguiente muestra el contenido de un archivo llamado Vehicle.as, que define la clase Vehicle:
package {
	class Vehicle { 
	    var numDoors:Number; 
	    var color:String; 
	    public function Vehicle(param_numDoors:Number = 2, param_color:String = null) { 
	        numDoors = param_numDoors; 
	        color = param_color; 
	    } 
	    public function start():void { 
	        trace("[Vehicle] start"); 
	    } 
	    public function stop():void { 
	        trace("[Vehicle] stop"); 
	    } 
	    public function reverse():void { 
	        trace("[Vehicle] reverse"); 
	    } 
	}	
}
El ejemplo siguiente muestra un segundo archivo ActionScript, llamado Car.as, en el mismo directorio. Esta clase amplía la clase Vehicle, modificándola de tres formas. En primer lugar, la clase Car añade una variable fullSizeSpare para realizar un seguimiento de si el objeto car tiene una rueda de repuesto a tamaño completo. En segundo lugar, añade un nuevo método específico de coches, activateCarAlarm(), que activa la alarma antirrobo del coche. En tercer lugar, anula la función stop() para añadir el hecho de que la clase Car utiliza un sistema de frenado ABS para detenerse.
package {

	public class Car extends Vehicle { 
	    var fullSizeSpare:Boolean; 
	    public function Car(param_numDoors:Number, param_color:String, param_fullSizeSpare:Boolean) { 
	        numDoors = param_numDoors; 
	        color = param_color; 
	        fullSizeSpare = param_fullSizeSpare; 
	    } 
	    public function activateCarAlarm():void { 
	        trace("[Car] activateCarAlarm"); 
	    } 
	    public override function stop():void { 
	        trace("[Car] stop with antilock brakes"); 
	    } 
	}
}
El ejemplo siguiente crea una instancia de un objeto Car, llama a un método definido en la clase Vehicle (start()), luego llama al método anulado por la clase Car (stop()) y, por último, llama a un método de la clase Car (activateCarAlarm()):
var myNewCar:Car = new Car(2, "Red", true); 
myNewCar.start(); // [Vehicle] start 
myNewCar.stop(); // [Car] stop with anti-lock brakes 
myNewCar.activateCarAlarm(); // [Car] activateCarAlarm
También se puede escribir una subclase de la clase Vehicle utilizando la sentencia super, que la subclase puede utilizar para acceder al constructor de la superclase. El ejemplo siguiente muestra un tercer archivo ActionScript, llamado Truck.as, también en el mismo directorio. La clase Truck utiliza super en el constructor y en el método reverse() anulado.
package {
	class Truck extends Vehicle {
		var numWheels:Number;
		public function Truck(param_numDoors:Number, param_color:String, param_numWheels:Number) { 
			super(param_numDoors, param_color); 
			numWheels = param_numWheels; 
		} 
		public override function reverse():void { 
			beep();
			super.reverse();
		} 
		public function beep():void { 
			trace("[Truck] make beeping sound"); 
		} 
	}
}
El ejemplo siguiente crea una instancia del objeto Truck, llama a un método anulado por la clase Truck (reverse()) y, a continuación, llama a un método definido en la clase Vehicle (stop()):
var myTruck:Truck = new Truck(2, "White", 18); 
myTruck.reverse(); // [Truck] make beeping sound [Vehicle] reverse 
myTruck.stop(); // [Vehicle] stop

Elementos de API relacionados

falsePalabra clave de expresión principal 
Uso

false

Valor booleano que representa el valor false. Un valor Boolean es true o false; lo opuesto a false es true.

Cuando la asignación automática de datos convierte false en un número, pasa a ser 0; cuando convierte false en una cadena, pasa a ser "false".

Nota: la cadena "false" se convierte al valor booleano true.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
Este ejemplo muestra cómo la introducción automática de datos convierte false en un número y en una cadena:
var bool1:Boolean = Boolean(false);

// converts it to the number 0
trace(1 + bool1); // outputs 1

// converts it to a string
trace("String: " + bool1); // outputs String: false
El ejemplo siguiente muestra que la cadena "false" se convierte al valor booleano true:
trace(Boolean("false")); // true

if ("false") {
	trace("condition expression evaluated to true");
}
else {
	trace("condition expression evaluated to false");
}
// condition expression evaluated to true

Elementos de API relacionados

finalPalabra clave de atributo 
Uso

final function methodName() { 
	// your statements here 
}
final class className {}

Especifica que un método no puede ser sustituido o que una clase no puede ampliarse. Todo intento de sustituir un método o ampliar una clase marcada como final da como resultado un error.

Parámetros
methodName:Function — El nombre del método que no puede sustituirse.
className:Class — El nombre de la clase que no puede ampliarse.

Elementos de API relacionados

flash_proxyEspacio de nombres 

Define métodos de la clase Proxy. Los métodos de la clase Proxy se encuentran en su propio espacio de nombres para evitar conflictos en situaciones en las que la subclase Proxy contenga nombres de métodos de instancias que coincidan con alguno de los nombres de métodos de la clase Proxy.

Parámetros

Elementos de API relacionados

forSentencia 
Uso

for ([init]; [condition]; [next]) { 
	// statement(s)
}

Evalúa la expresión init (inicializar) una vez y, a continuación, inicia una secuencia de reproducción indefinida. La secuencia de reproducción indefinida se inicia evaluando la expresión condition. Si la expresión condition da como resultado true, statement se ejecuta y se evalúa next. La secuencia de reproducción indefinida se inicia nuevamente con la evaluación de la expresión condition.

Las llaves ({}) que encierran el bloque de sentencias que va a ejecutar la sentencia for no son necesarias si solo se va a ejecutar una sentencia.

Parámetros
init — Expresión opcional que se va a evaluar antes de iniciar la secuencia de reproducción indefinida; normalmente es una expresión de asignación. En este parámetro también se permite una sentencia var.
condition — Expresión opcional que se va a evaluar antes de iniciar la secuencia de reproducción indefinida; normalmente es una expresión de comparación. Si la expresión da como resultado true, se ejecutan las sentencias asociadas a la sentencia for.
next — Expresión opcional que se va a evaluar después de la secuencia de reproducción indefinida; normalmente es una expresión de incremento o decremento.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente utiliza for para añadir los elementos a un conjunto:
var my_array:Array = new Array(); 
for (var i:Number = 0; i < 10; i++) { 
	my_array[i] = (i + 5) * 10;  
} 
trace(my_array); // 50,60,70,80,90,100,110,120,130,140 
El ejemplo siguiente utiliza for para realizar la misma acción repetidamente. En el código, el bucle for añade los números de 1 a 100.
var sum:Number = 0; 
for (var i:Number = 1; i <= 100; i++) { 
	sum += i; 
} 
trace(sum); // 5050
El ejemplo siguiente muestra que las llaves ({}) no son necesarias si solo se va a ejecutar una sentencia:
var sum:Number = 0; 
for (var i:Number = 1; i <= 100; i++) 
	sum += i; 
trace(sum); // 5050

Elementos de API relacionados

for..inSentencia 
Uso

for (variableIterant:String in object){ 
	// statement(s)
} 

Repite las propiedades dinámicas de un objeto o los elementos de un conjunto y ejecuta statement para cada propiedad o elemento. Las propiedades de objeto no se mantienen en ningún orden determinado, por lo que las propiedades pueden aparecer en un orden aparentemente aleatorio. Las propiedades fijas, como son las variables y los métodos definidos en una clase, no las enumera la sentencia for..in. Para obtener una lista de propiedades fijas, utilice la función describeType(), que se incluye en el paquete flash.utils.

Parámetros
variableIterant:String — El nombre de una variable que actuará como repetidor, haciendo referencia a cada propiedad de un objeto o elemento de un conjunto.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo utiliza for..in para repetirlo en las propiedades de un objeto:
var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
for (var prop in myObject) { 
	trace("myObject."+prop+" = "+myObject[prop]); 
} 
/*
myObject.firstName = Tara 
myObject.age = 27 
myObject.city = San Francisco
*/
EL siguiente ejemplo utiliza el operador typeof con for..in para repetir un determinado tipo de elemento secundario:
var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
for (var name in myObject) { 
	if (typeof (myObject[name]) == "string") { 
		trace("I have a string property named "+name); 
	} 
}
/*
I have a string property named city
I have a string property named firstName
*/

Elementos de API relacionados

for each..inSentencia 
Uso

for each (variableIterant in object){ 
	// statement(s)
} 

Repite los elementos de una colección y ejecuta statement por cada elemento. Se introduce como parte de las extensiones del lenguaje E4X, la sentencia for each..in se puede utilizar no solo para objetos XML, sino también para objetos y conjuntos. La sentencia for each..in repite solo las propiedades dinámicas de un objeto, no las propiedades fijas. Una propiedad fija es aquella que se define como parte de una definición de clase. Para utilizar la sentencia for each..in con una instancia de una clase definida por el usuario, debe declarar la clase con el atributo dynamic.

A diferencia de la sentencia for..in, la sentencia for each..in repite los valores de las propiedades de un objeto en lugar de los nombres de las propiedades.

Parámetros
variableIterant:* — El nombre de una variable que actuará como repetidor, haciendo referencia al elemento en una colección.
object:Object — El nombre de una colección que se va a repetir. La colección puede ser un objeto XML, un objeto genérico o un conjunto.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo utiliza una sentencia for each..in para repetirlo en los valores de las propiedades de un objeto:
var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
for each (var item in myObject) { 
	trace(item); 
} 
/*
Tara
27
San Francisco
*/
El siguiente ejemplo utiliza una sentencia for each..in para repetirlo en los elementos de un conjunto:
var myArray:Array = new Array("one", "two", "three"); 
for each(var item in myArray) 
	trace(item); 
/*
one
two
three
*/
El ejemplo siguiente utiliza el operador is operator con for each..in para repetir un determinado tipo de elemento secundario:
var myObject:Object = {firstName:"Tara", age:27, city:"San Francisco"}; 
for each (var item in myObject) { 
	if (item is String) {  
		trace("I have a string property with value " + item); 
	} 
}

/*
I have a string property with value Tara
I have a string property with value San Francisco
*/
En el siguiente ejemplo se utiliza for each..in para repetirlo en las propiedades de un objeto XMLList (doc.p):
var doc:XML = 
		
			

Hello

Hola


Bonjour

; for each (var item in doc.p) { trace(item); } /* Hello Hola Bonjour */

functionPalabra clave de definición 
Uso

function functionName([parameter0, parameter1,...parameterN]) : returnType{ 
	// statement(s) 
} 
var functionName:Function = function ([parameter0, parameter1,...parameterN]) : returnType{ 
	// statement(s) 
} 

Consta de un conjunto de sentencias que se definen para ejecutar una determinada tarea. Puede definir una función en una ubicación e invocarla o llamarla desde distintos guiones de un archivo SWF. Cuando defina una función, puede además especificar parámetros para dicha función. Los parámetros son marcadores de posición de los valores sobre los que opera la función. Puede pasar distintos parámetros a una función cada vez que la llame para poder reutilizar la misma función en situaciones diferentes.

Utilice la sentencia return en el bloque statement(s) de una función para que se genere la función o devolver un valor.

Sintaxis 1: puede utilizar la palabra clave function para definir una función con el nombre, los parámetros y las sentencias especificadas. Cuando un script llama a una función, se ejecutan las sentencias de la definición de la función. Se permite la creación de referencias hacia delante; en un mismo script, una función puede declararse después de llamarse. Una definición de función sustituye cualquier definición anterior de la misma función. Puede utilizar esta sintaxis donde se permita una sentencia.

Sintaxis 2: también puede utilizar function para crear una función anónima y devolver una referencia a ella. Esta sintaxis se utiliza en expresiones y es especialmente útil para instalar métodos en objetos.

Para añadir funcionalidad, puede utilizar el objeto arguments en la definición de la función. El objeto arguments suele utilizarse para crear una función que acepte un número variable de parámetros y para crear una función anónima recursiva.

Parámetros
functionName:Function — El nombre de la nueva función.
returnType:* — El tipo de datos del valor de retorno.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente define la función sqr, que devuelve el valor de un número al cuadrado:
function sqr(xNum:Number) { 
	return Math.pow(xNum, 2); 
} 
var yNum:Number = sqr(3); 
trace(yNum); // 9
Si se define y utiliza la función en el mismo script, la definición de función puede aparecer después de usar la función:
var yNum:Number = sqr(3); 
trace(yNum); // 9 
function sqr(xNum:Number) { 
	return Math.pow(xNum, 2); 
}

Elementos de API relacionados

getPalabra clave de definición 
Uso

function get property() : returnType{ 
	// your statements here 
}

Define un captador (getter), que es un método que puede leerse como una propiedad. Un captador es una función especial que devuelve el valor de una propiedad declarada con la palabra clave var o const. A diferencia de otros métodos, la llamada a un captador se realiza sin paréntesis (()), lo que hace que el captador parezca una variable.

Los captadores le permiten aplicar el principio de ocultación de información permitiéndole crear una interfaz pública para una propiedad privada. La ventaja que ofrece la ocultación de información es que la interfaz pública permanece igual aunque cambie la implementación subyacente de la propiedad privada.

Otra ventaja que presentan los captadores es que pueden sustituirse en subclases, algo que no es posible con la propiedades declaradas con var o const.

Un captador puede combinarse con un definidor (setter) para crear una propiedad de solo lectura. Para crear una propiedad de solo lectura, cree un captador sin su correspondiente definidor. Para crear una propiedad de solo escritura, cree un definidor sin su correspondiente captador.

Parámetros
property:* — El identificador de la propiedad a la que accede get; este valor debe coincidir con el valor utilizado en el comando set correspondiente.
returnType:* — El tipo de datos del valor de retorno.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente devuelve una clase Team. La clase Teamincluye métodos de captador/definidor (getter/setter) que permiten recuperar y establecer propiedades dentro de la clase:
package {
	public class Team { 
		var teamName:String; 
		var teamCode:String; 
		var teamPlayers:Array = new Array(); 
		public function Team(param_name:String, param_code:String) { 
			teamName = param_name; 
			teamCode = param_code; 
		} 
		public function get name():String { 
			return teamName; 
		} 
		public function set name(param_name:String):void { 
			teamName = param_name; 
		}
	} 
}
Escriba el código siguiente en el script:
var giants:Team = new Team("San Fran", "SFO"); 
trace(giants.name); 
giants.name = "San Francisco"; 
trace(giants.name); 
/*
San Fran San Francisco */
Cuando realiza un seguimiento de giants.name, utilice el método captador para devolver el valor de la propiedad.

Elementos de API relacionados

ifSentencia 
Uso

if (condition) {
	// statement(s)
}

Evalúa una condición para determinar la siguiente sentencia que debe ejecutarse. Si la condición es true, Flash Player ejecuta las sentencias que hay entre llaves ({}), a continuación de la condición. Si la condición es false, Flash Player omite las sentencias entre llaves y ejecuta las sentencias que siguen a las llaves. Utilice la sentencia if junto con la sentencia else para crear una lógica ramificada en los scripts.

Las llaves ({}) que encierran las sentencias que va a ejecutar la sentencia if no son necesarias si solo se va a ejecutar una sentencia.

Parámetros
condition:Boolean — Expresión que da como resultado true o false.

Elementos de API relacionados

implementsPalabra clave de definición 
Uso

myClass implements interface01 [, interface02 , ...] 

Especifica que una clase implementa una o varias interfaces. Cuando una clase implementa una interfaz, la clase debe definir todos los métodos declarados en la interfaz. Toda instancia de una clase que implemente una interfaz se considerará miembro del tipo de datos definido por la interfaz. Como resultado, el operador is devuelve true cuando la instancia de clase es el primer operando y la interfaz el segundo; además, funcionan las coerciones de tipos desde y hacia el tipo de datos definido por la interfaz.

Parámetros

Elementos de API relacionados

importDirectiva 
Uso

import packageName.className 
import packageName.*

Pone las clases y paquetes definidos externamente a disposición del código. Por ejemplo, si desea utilizar la clase flash.display.Sprite en un script, debe importarla. Este requisito ha cambiado con respecto a versiones anteriores de ActionScript, en las que la directiva import era opcional.

Tras utilizar la directiva import, podrá utilizar el nombre completo de la clase, que incluye el nombre del paquete, o solo el nombre de la clase.

 
import flash.display.Sprite; 

// name of class only
var mySprite:Sprite = new Sprite();

// full class name
var mySprite:flash.display.Sprite = new flash.display.Sprite();

Si hay varias clases en el paquete a las que desea acceder, puede importarlas todas en una sola sentencia, como se muestra en el siguiente ejemplo:

import flash.display.*;

La directiva import importa solo las clases, funciones y variables que residen en el nivel superior del paquete importado. Los paquetes anidados deben importarse explícitamente.

Si importa una clase pero no la utiliza en el script, la clase no se exporta como parte del archivo SWF. Eso significa que puede importar grandes paquetes sin preocuparse del tamaño del archivo SWF; el código de bytes asociado con una clase se incluye en un archivo SWF únicamente si dicha clase se utiliza realmente. Una desventaja de la importación de clases que no necesita es que aumentan las posibilidades de que se produzcan conflictos de nombres.

// On Frame 1 of a FLA: 
import adobe.example.*; 
var myFoo:foo = new foo();

Parámetros
packageName:* — El nombre del paquete que ha definido en un archivo de clase independiente.
className:Class — El nombre de una clase que ha definido en un archivo de clase independiente.
includeDirectiva 
Uso

include "[path]filename.as"

Incluye el contenido del archivo especificado, como si los comandos del archivo formaran parte del script que realiza la llamada. La directiva include se invoca durante la compilación. Por lo tanto, si realiza modificaciones en un archivo incluido, deberá guardarlo y volver a compilar todos los archivos SWF que lo utilizan.

Parámetros
interfacePalabra clave de definición 
Uso

 interface InterfaceName [extends InterfaceName ] {}

Define una interfaz. Las interfaces son tipos de datos que definen un conjunto de métodos; todas las clases que implementen la interfaz deberán definir los métodos.

Una interfaz es similar a una clase, pero presenta estas diferencias importantes:

  • Las interfaces solo contienen declaraciones de métodos, no su implementación. Es decir, cada clase que implementa una interfaz debe proporcionar una implementación para cada método declarado en la interfaz.
  • Las definiciones de métodos de interfaz no pueden tener ningún atributo como public o private, pero los métodos implementados deben marcarse como public en la definición de la clase que implementa la interfaz.
  • Una interfaz puede heredar varias interfaces mediante la sentencia extends, o mediante una clase a través de la sentencia implements.

A diferencia de ActionScript 2.0, ActionScript 3.0 permite el uso de métodos captadores y definidores en definiciones de interfaz.

Parámetros

Elementos de API relacionados

internalPalabra clave de atributo 
Uso

[internal] var varName
[internal] const kName
[internal] function functionName()  { 
	// your statements here 
}
[internal] class className{
	// your statements here 
}
[internal] namespace nsName

Especifica que una clase, variable, constante o función está disponible para cualquier origen de llamada dentro del mismo paquete. Las clases, propiedades y métodos pertenecen al espacio de nombres internal de manera predeterminada.

Parámetros
className:Class — El nombre de la clase que desea especificar como interna.
varName:* — El nombre de la variable que desea especificar como interna. Puede aplicar el atributo internal tanto si la variable forma parte de una clase como si no.
kName:* — El nombre de la constante que desea especificar como interna. Puede aplicar el atributo internal tanto si la constante forma parte de una clase como si no.
functionName:Function — El nombre de la función o el método que desea especificar como interno. Puede aplicar el atributo internal tanto si la función forma parte de una clase como si no.
nsName:Namespace — El nombre del espacio de nombres que desea especificar como interno. Puede aplicar el atributo internal tanto si el espacio de nombres forma parte de una clase como si no.

Elementos de API relacionados

labelSentencia 
Uso

label: statement
label: {
    statements
}

Asocia una sentencia a un identificador al que puede hacerse referencia mediante break o continue. En bucles anidados, una sentencia break o continue que no hace referencia al texto puede omitir el resto del bucle inmediato, no toda la serie de bucles anidados. Sin embargo, si la sentencia que define toda la serie de bucles tiene texto asociado, una sentencia break o continue puede omitir toda la serie de bucles haciendo referencia a dicho texto.

Las etiquetas también permiten salir de una sentencia de bloque. No puede colocar una sentencia break que no haga referencia a una etiqueta dentro de una sentencia de bloque a no ser que la sentencia de bloque forme parte de un bucle. Si la sentencia de bucle tiene una etiqueta asociada, puede colocar una sentencia break que haga referencia a dicha etiqueta dentro de la sentencia de bloque.

Parámetros
label:* — Identificador válido que va a asociarse a una sentencia.
statements:* — Sentencia que va a asociarse a la etiqueta.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo muestra cómo utilizar una etiqueta con un bucle anidado para salir de toda la serie de bucles. El código utiliza un bucle anidado para generar una lista de números del 0 al 99. La sentencia break tiene lugar justo antes de que el recuento llegue a 80. Si la sentencia break no ha utilizado la etiqueta outerLoop, el código solo omitirá el resto del bucle inmediato y el código continuará produciendo los números del 90 al 99. Sin embargo, dado que se utiliza la etiqueta outerLoop, la sentencia break omite el resto de la serie completa de bucles, por lo que el último número proporcionado en la salida es 79.
outerLoop: for (var i:int = 0; i < 10; i++) {
	for (var j:int = 0; j < 10; j++) {
		if ( (i == 8) && (j == 0)) {
			break outerLoop;
		}
		trace(10 * i + j);
	}
}
/*
1
2
...
79
*/
El ejemplo siguiente muestra cómo utilizar una etiqueta con una sentencia de bloque. En el siguiente ejemplo, una sentencia de bloque tiene la etiqueta foo, lo que permite a la sentencia break omitir la última sentencia del bloque:
foo: {
	trace("a");
	break foo;
	trace("b");
}
// a

Elementos de API relacionados

namespacePalabra clave de definición 
Uso

namespace name [= uri]

Permite controlar la visibilidad de las definiciones. Algunos de los espacios de nombres predefinidos son public, private, protected e internal.

El siguiente paso muestra cómo crear, aplicar y hacer referencia a un espacio de nombres:

  • En primer lugar, defina el espacio de nombres personalizado empleando la palabra clave namespace. Por ejemplo, el código namespace version1 crea un espacio de nombres llamado version1.
  • En segundo lugar, aplique el espacio de nombres a una propiedad o un método empleando su espacio de nombres personalizado en la declaración de la propiedad o el método. Por ejemplo, el código version1 myProperty:String crea una propiedad llamada myProperty que pertenece al espacio de nombres version1
  • En tercer lugar, haga referencia al espacio de nombres utilizando la palabra clave use o prefijando un identificador con el espacio de nombres. Por ejemplo, el código use namespace version1; hace referencia al espacio de nombres version1 para líneas siguientes de código, y el código version1::myProperty hace referencia al espacio de nombres version1 para la propiedad myProperty.

Parámetros
name:Namespace — Nombre del espacio de nombres, que puede ser cualquier identificador válido.
uri:String — Identificador uniforme de recurso (URI) del espacio de nombres. Este parámetro es opcional.

Elementos de API relacionados

nativePalabra clave de atributo 
Uso

native function functionName();
class className { 
	native function methodName();
}

Especifica que Flash Player implementa una función o un método en código nativo. Flash Player utiliza la palabra clave native internamente para declarar funciones y métodos en la interfaz de programación de aplicaciones (API) de ActionScript. No podrá utilizar esta palabra clave en su propio código.  

Parámetros
nullPalabra clave de expresión principal 
Uso

null

Valor especial que puede asignarse a las variables o ser devuelto por una función si no se ha proporcionado ningún dato. Puede utilizar null para representar los valores que faltan o que no tienen un tipo de datos definido.

El valor null no debe confundirse con el valor especial undefined. Cuando null y undefined se comparan con el operador de igualdad (==) se comparan como iguales. Sin embargo, cuando null y undefined se comparan con el operador de igualdad estricta (===), se comparan como no iguales.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
El mensaje siguiente comprueba los seis primeros valores de unm conjunto indexado y devuelve un mensaje si no hay ningún valor definido (si valor == null):
var testArray:Array = new Array();
testArray[0] = "fee";
testArray[1] = "fi";
testArray[4] = "foo";

for (i = 0; i < 6; i++) {
    if (testArray[i] == null) {
        trace("testArray[" + i + "] == null");
    }
}

/* 
testArray[2] == null
testArray[3] == null
testArray[5] == null
*/

Elementos de API relacionados

object_proxyEspacio de nombres 

Define métodos de la clase ObjectProxy. Los métodos de la clase ObjectProxy se encuentran en su propio espacio de nombres para evitar conflictos en situaciones en las que la subclase ObjectProxy contenga nombres de métodos de instancias que coincidan con alguno de los nombres de métodos de la clase ObjectProxy.

Parámetros
overridePalabra clave de atributo 
Uso

override function name() { 
	// your statements here 
}

Especifica que un método reemplaza a un método heredado. Para sustituir un método heredado, debe utilizar el atributo override y garantizar que el nombre, el atributo de la propiedad de la clase, el número y el tipo de parámetros y de devolución coinciden exactamente. Es un error intentar sustituir un método sin utilizar el atributo override. Del mismo modo, es un error utilizar el atributo override si el método no tiene un método heredado correspondiente.

No puede utilizar el atributo override con ninguno de los siguientes elementos:

  • Variables
  • Constantes
  • Métodos estáticos
  • Métodos que no sean heredados
  • Métodos que implementen un método de interfaz
  • Métodos heredados que estén marcados como final en la superclase

Aunque no puede sustituir una propiedad declarada con var o const, puede lograr una funcionalidad similar haciendo que la propiedad de clase base sea un captador-definidor y sustituyendo los métodos definidos con get y set.

Parámetros
name:Function — Nombre del método que se va a sustituir.

Elementos de API relacionados

packagePalabra clave de definición 
Uso

package packageName {
    class someClassName { 
    } 
}

Le permite organizar el código en grupos diferenciados que otros scripts pueden importar. Debe utilizar la palabra clave package para indicar que una clase es miembro de un paquete.

Parámetros
packageName:* — Nombre del paquete.

Elementos de API relacionados

privatePalabra clave de atributo 
Uso

class className{ 
	private var varName;
	private const kName;
	private function methodName() { 
		// your statements here 
	}
	private namespace nsName;
}

Especifica que una variable, constante o método esté únicamente disponible para la clase que la declara o define. A diferencia de ActionScript 2.0, en ActionScript 3.0, private ya no proporciona acceso a subclases. Además, private restringe el acceso tanto en tiempo de compilación como en tiempo de ejecución. De manera predeterminada, una variable o función está disponible para cualquier origen de llamada del mismo paquete. Utilice esta palabra clave si desea restringir el acceso a una variable o función.

Puede utilizar esta palabra clave únicamente en definiciones de clases, no en definiciones de interfaces. No puede aplicar private a una clase ni a ninguna otra definición a nivel de paquete.

Parámetros
varName:* — El nombre de la variable que desea especificar como private (privada). Puede aplicar el atributo private solo si la variable está dentro de una clase.
kName:* — El nombre de la constante que desea especificar como private (privada). Puede aplicar el atributo private solo si la constante está dentro de una clase.
methodName:Function — El nombre del método que desea especificar como private (privado). Puede aplicar el atributo private solo si el método está dentro de una clase.
nsName:Namespace — El nombre del espacio de nombres que desea especificar como private (privado). Puede aplicar el atributo private solo si el espacio de nombres está dentro de una clase.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo muestra cómo se pueden ocultar ciertas propiedades de una clase con la palabra clave private.
class A { 
  private var alpha:String = "visible only inside class A"; 
  public var beta:String = "visible everywhere"; 
}
	
class B extends A {
  function B() {
    alpha = "Access attempt from subclass"; // error
  }
}
Dado que alpha es una variable privada, no podrá obtener acceso a ella desde fuera de la clase A, ni siquiera desde la clase B. Los intentos de acceso a la variable privada generarán un error.

Elementos de API relacionados

protectedPalabra clave de atributo 
Uso

class className{ 
	protected var varName;
	protected const kName;
	protected function methodName() { 
		// your statements here 
	}
	protected namespace nsName;
}

Especifica que una variable, constante, método o espacio de nombres esté únicamente disponible para la clase que lo define y para las subclases de dicha clase. La definición de protected en ActionScript 3.0 es similar a la definición de la versión ActionScript 2.0 de private, con la diferencia de que protected restringe el acceso tanto en tiempo de compilación como en el de ejecución. De manera predeterminada, una variable o función está disponible para cualquier origen de llamada dentro del mismo paquete. Utilice esta palabra clave si desea restringir el acceso a una variable o función.

Puede utilizar esta palabra clave únicamente en definiciones de clases, no en definiciones de interfaces. No puede aplicar private a una clase ni a ninguna otra definición a nivel de paquete.

La definición de protected en ActionScript 3.0 es más restrictiva que la de protected en el lenguaje de programación Java. En ActionScript 3.0 protected limita el acceso estrictamente a las subclases, mientras que, en Java, protected también permite el acceso a cualquier clase del mismo paquete. Por ejemplo, si una clase llamada Base contiene una propiedad marcada como protected, solo las clases que amplíen Base podrán acceder a la propiedad protegida en ActionScript 3.0. En Java, todas las clases del mismo paquete que Base tendrán acceso a la propiedad protegida aunque la clase no sea una subclase de Base.

Parámetros
varName:* — El nombre de la variable que desea especificar como protected (protegida). Puede aplicar el atributo protected solo si la variable está dentro de una clase.
kName:* — El nombre de la constante que desea especificar como protected (protegida). Puede aplicar el atributo protected solo si la constante está dentro de una clase.
methodName:Function — El nombre del método que desea especificar como protected (protegido). Puede aplicar el atributo protected solo si el método está dentro de una clase.
nsName:Namespace — El nombre del espacio de nombres que desea especificar como protected (protegido). Puede aplicar el atributo protected solo si el espacio de nombres está dentro de una clase.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo crea una variable de clase protegida en una clase A y obtiene acceso correctamente a dicha variable en la clase B porque la clase B es una subclase de la clase A.
class A { 
  private var alpha:String = "visible only inside class A"; 
  protected var beta:String = "visible inside class A and its subclasses"; 
}
	
class B extends A {
  public function B() {
    beta = "Access attempt from subclass succeeded";
    trace(beta);  // Access attempt from subclass succeeded
  }
}

Elementos de API relacionados

publicPalabra clave de atributo 
Uso

public var varName
public const kName
public function functionName()  { 
	// your statements here 
}
public class className {
	// your statements here 
}
public namespace nsName

Especifica que una clase, variable, constante o método está disponible para cualquier origen de llamada. Las clases, variables y métodos son internos de manera predeterminada, lo que significa que solo son visibles dentro del paquete actual. Para que una clase, una variable o un método sean visibles a todos los orígenes de llamada, deberá utilizar el atributo public.

Parámetros
className:Class — El nombre de la clase que desea especificar como public (pública).
varName:* — El nombre de la variable que desea especificar como public (pública). Puede aplicar el atributo public tanto si la variable forma parte de una clase como si no.
kName:* — El nombre de la constante que desea especificar como public (pública). Puede aplicar el atributo public tanto si la constante forma parte de una clase como si no.
functionName:Function — El nombre de la función o el método que desea especificar como public (público). Puede aplicar el atributo public tanto si la función forma parte de una clase como si no.
nsName:Namespace — El nombre del espacio de nombres que desea especificar como public (público). Puede aplicar el atributo public tanto si el espacio de nombres forma parte de una clase como si no.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente muestra cómo se pueden utilizar variables públicas en un archivo de clase:
class User { 
	public var age:Number; 
	public var fname:String; 
} // end of class User definition
 
var jimmy:User = new User(); 
jimmy.age = 27; 
jimmy.fname = "jimmy";
trace(jimmy.age, jimmy.fname); // 27 jimmy
Si cambia una de las variables públicas en la clase User por una variable privada, se generará un error de tiempo de compilación al intentar acceder a dicha variable fuera de la clase User.

Elementos de API relacionados

returnSentencia 
Uso

function functionName () {
	return [expression]
}

Provoca que la ejecución regrese inmediatamente a la función que origina la llamada. Si la sentencia return va seguida de una expresión, la expresión se evalúa y se devuelve el resultado.

Si una definición de función incluye un tipo de devolución, la sentencia return debe ir seguida de una expresión. Si no se especifica ningún tipo de devolución y la sentencia return se utiliza sola, esta devuelve undefined.

No es posible devolver múltiples valores. Si intenta hacerlo, solo se devolverá el último valor. En el siguiente ejemplo se devuelve c:

return a, b, c ;

Si es necesario devolver múltiples valores, utilice un conjunto u objeto en su lugar.

Parámetros
expression:* — Expresión que se va a evaluar y devolver como un valor de la función. Este parámetro es opcional.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente utiliza la sentencia return dentro del cuerpo de la función sum() para devolver el valor sumado de los tres parámetros. La siguiente línea de código llama a sum() y asigna el valor devuelto a la variable newValue.
function sum(a:Number, b:Number, c:Number):Number { 
	return (a + b + c); 
} 
var newValue:Number = sum(4, 32, 78); 
trace(newValue); // 114

Elementos de API relacionados

setPalabra clave de definición 
Uso

function set property(newValue:*) : void{ 
	// your statements here 
}

Define un definidor (setter), que es un método que aparece en la interfaz pública como una propiedad. Un setter es un método especial que establece el valor de una propiedad declarada con la palabra clave var. A diferencia de otros métodos, la llamada a un definidor se realiza sin paréntesis (()), lo que hace que el definidor parezca una variable.

Los definidores le permiten aplicar el principio de ocultación de información permitiéndole crear una interfaz pública para una propiedad privada. La ventaja que ofrece la ocultación de información es que la interfaz pública permanece igual aunque cambie la implementación subyacente de la propiedad privada.

Otra ventaja que presentan los definidores es que pueden sustituirse en subclases, algo que no es posible hacer con propiedades declaradas con var.

El tipo de devolución de un definidor debe ser void o sin especificar.

Un definidor puede combinarse con un captador (getter) para crear una propiedad de lectura-escritura. Para crear una propiedad de solo lectura, cree un captador sin su correspondiente definidor. Para crear una propiedad de solo escritura, cree un definidor sin su correspondiente captador.

Parámetros
property:* — El identificador de la propiedad a la que modifica set; este valor debe coincidir con el valor utilizado en el comando get correspondiente.
newValue:* — Nuevo valor que se va a asignar.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo crea una propiedad de lectura-escritura llamada age mediante la definición de un captador-definidor.
package {
	class User { 
	    private var userAge:Number; 
	    
	    public function get age():Number {
	    	return userAge;
	    }
	    
	    public function set age(x:Number):void {
	    	userAge = x;	
	    }
	} 
} 
Escriba el código siguiente en el script:
var myUser:User = new User();
myUser.age = 25;
trace(myUser.age); // 25

Elementos de API relacionados

staticPalabra clave de atributo 
Uso

class someClassName{ 
	static var varName; 
	static const kName;
	static function methodName() { 
		// your statements here
	} 
}

Especifica que una variable, constante o método pertenece a la clase y no las instancias de la clase.

Para acceder a un miembro de clase estático, utilice el nombre de la clase en lugar del nombre de una instancia. Por ejemplo, la clase Date tiene un método estático denominado parse(), al que solo es posible llamar empleando la siguiente sintaxis:

Date.parse()

No es posible llamar al método parse() en una instancia de la clase Date. Por ejemplo, el siguiente código genera un error:

var myDate:Date = new Date();
            myDate.parse("Jan 01 00:00:00 2006"); // error

Puede utilizar static en definiciones de clases solamente, no en definiciones de interfaces.

Los miembros de clase estáticos no se heredan. No puede hacer referencia a un miembro de clase estático empleando el nombre de una subclase, algo que, por el contrario, sí es posible en Java o C++. Sin embargo, puede hacer referencia a una variable o un método estático dentro de una clase o subclase sin utilizar ningún calificador. Consulte el ejemplo siguiente.

No puede utilizar la sentencia super ni la palabra clave this dentro de un método estático.

Parámetros
varName:* — El nombre de la variable que desea especificar como static (estática).
kName:* — El nombre de la constante que desea especificar como static (estática).
methodName:Function — El nombre del método que desea especificar como static (estático).

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente demuestra cómo se puede utilizar la palabra clave static para crear un contador que realiza un seguimiento del número de instancias de la clase que se han creado. Dado que la variable numInstances es estática, se creará solo una vez para toda la clase, no para cada instancia individual. Cree un archivo ActionScript nuevo llamado User.as e introduzca el código siguiente:
class Users { 
	private static var numInstances:Number = 0; 
	function Users() { 
		numInstances++; 
	} 
	static function get instances():Number { 
		return numInstances; 
	} 
}
Escriba el código siguiente en el script:
trace(Users.instances); 
var user1:Users = new Users(); 
trace(Users.instances); 
var user2:Users = new Users(); 
trace(Users.instances); 
El siguiente ejemplo amplía la clase Users para mostrar que las variables y los métodos estáticos no se heredan, aunque sí puede hacerse referencia a ellos en las subclases.
class PowerUsers extends Users{
    function PowerUsers() {
        instances++;  // unqualified reference to static property Users.instances is legal
    }
}

trace(PowerUsers.instances); // error, cannot access static property using PowerUsers class

superSentencia 
Uso

super([arg1, ..., argN])
super.method([arg1, ..., argN])

Invoca la superclase o versión principal de un método o constructor. Cuando se utiliza dentro del cuerpo de una clase constructora, la sentencia super() invoca la versión de superclase del constructor. La llamada al constructor de la superclase debe tener el número correcto de argumentos. Tenga en cuenta que siempre se llama al constructor de la superclase, con independencia de si se realiza la llamada explícitamente o no. Si no la llama explícitamente, se introduce automáticamente una llamada sin argumentos antes de la primera sentencia del cuerpo del constructor de la subclase. Esto significa que, si define una función constructora en una subclase y el constructor de la superclase tiene uno o varios argumentos, deberá llamar explícitamente al constructor de la superclase con el número correcto de argumentos o, de lo contrario, se producirá un error. Sin embargo, la llamada al constructor de la superclase no tiene que ser necesariamente la primera sentencia del constructor de la subclase, como se exigía en ActionScript 2.0.

Cuando se utiliza en el cuerpo de un método de instancia, super puede utilizarse con el operador de punto (.) para invocar la versión de superclase de un método y puede, opcionalmente, pasar argumentos (arg1 ... argN) al método de superclase. Esto resulta útil para crear métodos de subclase que no solo añaden un comportamiento adicional a los métodos de superclase, sino que también invocan los métodos de superclase para que ejecuten su comportamiento original.

No se puede utilizar la sentencia super en un método estático.

Parámetros
method:Function — Método que se invocará en la superclase.
argN:* — Parámetros opcionales que se pasan a la versión de superclase del método o a la función constructora de la superclase.

Elementos de API relacionados

switchSentencia 
Uso

switch (expression) {
	caseClause: 
	[defaultClause:] 
}

Provoca que el control se transfiera a una entre varias sentencias, dependiendo del valor de una expresión. Todas las sentencias switch deberían incluir un caso predeterminado para que se ejecute si ninguna de las sentencias case coincide con la expresión. Cada sentencia case debe terminar con una sentencia break, que impide que se produzca un error de paso. Cuando se pasa de un caso al siguiente, se ejecuta el código de la siguiente sentencia case aunque dicho caso pueda no coincidir con la expresión de prueba.

Parámetros
expression:* — Cualquier expresión.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo define una sentencia switch que pasa al caso predeterminado:
var switchExpression:int = 3;
		
switch (switchExpression) {
	case 0:
		trace(0);
		break;
	case 1:
		trace(1);
		break;
	case 2:
		trace(2);
		break;
	default:
		trace("Not 0, 1, or 2");
}

// Not 0, 1, or 2

Elementos de API relacionados

thisPalabra clave de expresión principal 
Uso

this

Referencia al objeto que contiene el método. Cuando se ejecuta un script, la palabra clave this hace referencia al objeto que contiene el script. Dentro de un cuerpo de método, la palabra clave this hace referencia a la instancia de clase que contiene el método llamado.

Parámetros

Ejemplo
Cómo utilizar este ejemplo
Para llamar a una función definida en una clase dinámica, debe utilizar this para invocar la función en el ámbito adecuado:
// incorrect version of Simple.as
/*
dynamic class Simple {
    function callfunc() {
        func();
    }
}
*/
// correct version of Simple.as
dynamic class Simple {
    function callfunc() {
        this.func();
    }
}
Añada el código siguiente al script:
var simpleObj:Simple = new Simple();
simpleObj.func = function() {
	trace("hello there");
}
simpleObj.callfunc();
El código anterior funciona cuando utiliza this en el método callfunc(). Sin embargo, aparecerá un error de sintaxis si ha utilizado la versión incorrecta de Simple.as, que se convirtió en comentario en el ejemplo anterior.

throwSentencia 
Uso

throw expression 

Genera o emite un error que puede controlarse o capturarse mediante un bloque de código catch. Si un bloque catch no captura una excepción, la representación de cadena del valor emitido se envía al panel Salida. Si un bloque catch o finally no captura una excepción, la representación de cadena del valor emitido se envía al archivo de registro.

Normalmente, se emiten instancias de la clase Error o de sus subclases (véase el apartado Ejemplo).

Parámetros
expression:* — Expresión u objeto de ActionScript.

Ejemplo
Cómo utilizar este ejemplo
En este ejemplo, una función llamada checkEmail() comprueba si la cadena que se le pasa es una dirección de correo electrónico con el formato adecuado. Si la cadena no contiene un símbolo @, la función emite un error.
function checkEmail(email:String) { 
	if (email.indexOf("@") == -1) { 
		throw new Error("Invalid email address"); 
	} 
} 
checkEmail("someuser_theirdomain.com");
El código siguiente llama a continuación a la misma función, checkEmail(), dentro de un bloque de código try. Si la cadena de correo electrónico no contiene una dirección de correo electrónico válida, la sentencia trace proporciona como salida el mensaje de error.
try { 
	checkEmail("Joe Smith"); 
} 
catch (e) { 
	trace(e); 
}
// Error: Invalid email address.
En el ejemplo siguiente se emite una subclase de la clase Error. La función checkEmail se modifica para emitir una instancia de esa subclase.
// Define Error subclass InvalidEmailError 
class InvalidEmailAddress extends Error { 
    public function InvalidEmailAddress() {
    	message = "Invalid email address."; 
    }
}
Escriba el código siguiente en el script:
import InvalidEmailAddress; 
function checkEmail(email:String) { 
	if (email.indexOf("@") == -1) { 
		throw new InvalidEmailAddress(); 
	} 
} 
try { 
	checkEmail("Joe Smith"); 
} 
catch (e) { 
	trace(e);
}
// Error: Invalid email address.

Elementos de API relacionados

truePalabra clave de expresión principal 
Uso

true

Valor booleano que representa el valor true. Un valor Boolean es true o false; lo opuesto a true es false. Cuando la introducción automática de datos convierte true en un número, pasa a ser 1; cuando convierte true en una cadena, pasa a ser "true".

Parámetros

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente muestra el uso de true en una sentencia if:
var shouldExecute:Boolean;
// ...
// code that sets shouldExecute to either true or false goes here
// shouldExecute is set to true for this example:

shouldExecute = true;

if (shouldExecute == true) {
    trace("your statements here");
}

// true is also implied, so the if statement could also be written:
// if (shouldExecute) {
//         trace("your statements here");
// }
El ejemplo siguiente muestra cómo la introducción automática de datos convierte true en el número 1:
var myNum:Number;
myNum = 1 + true;
trace(myNum); // 2

Elementos de API relacionados

try..catch..finallySentencia 
Uso

try { 
    // try block 
} finally { 
    // finally block  
} 

try { 
    // try block 
} catch(error[:ErrorType1]) {
    // catch block 
} [catch(error[:ErrorTypeN]) { 
    // catch block 
}] [finally {
    // finally block 
}]

Incluye un bloque de código en el que puede producirse un error y, a continuación, responde al error. La gestión de excepciones, que se implementa mediante las sentencias try..catch..finally, es el mecanismo principal de gestión de condiciones de error en tiempo de ejecución en ActionScript 3.0. Cuando se produce un error en tiempo de ejecución, Flash Player emite una excepción, es decir, Flash Player desactiva la ejecución normal y crea un objeto especial de tipo Error. Flash Player luego pasa, o emite, el objeto de error al primer bloque catch disponible. Si no hay bloques catch disponibles, la excepción se considera una excepción no capturada. Las excepciones no capturadas provocan que se interrumpa el script.

Puede utilizar la sentencia throw para emitir excepciones explícitamente en el código. Puede emitir cualquier valor, pero lo más recomendable es emitir un objeto, ya que proporciona flexibilidad y coincide con el comportamiento de Flash Player.

Para capturar una excepción, tanto si la ha emitido Flash Player como si la emite su propio código, sitúe el código que debe emitir la excepción en un bloque try. Si alguna parte del código del bloque try emite una excepción, el control pasa al bloque catch (si existe) y, después, al bloque finally (si existe). El bloque finally se ejecuta siempre, independientemente de que se haya emitido o no una excepción. Si el código dentro del bloque try no emite ninguna excepción (esto es, si el bloque try finaliza correctamente), el código del bloque catch se omite, pero el código del bloque finally sí se ejecuta. El bloque finally se ejecuta aunque el bloque try finalice con una sentencia return.

Un bloque try debe ir seguido de un bloque catch, un bloque finally, o ambos. Un único bloque try puede incluir múltiples bloques catch pero solo un bloque finally. Puede anidar los bloques try tantos niveles como desee.

El parámetro error especificado en un controlador catch debe ser un identificador simple como e o theException o x. Además, el parámetro puede tener un tipo asignado. Cuando se utilizan con varios bloques catch, los parámetros clasificados por tipos permiten capturar varios tipos de objetos de error emitidos desde un solo bloque try.

Si la excepción emitida es un objeto, el tipo coincidirá si el objeto emitido es una subclase del tipo especificado. Si se emite un error de un tipo específico, se ejecuta el bloque catch que controla el error correspondiente. Si se emite una excepción que no es del tipo especificado, el bloque catch no se ejecuta y la excepción se envía automáticamente fuera del bloque try a un controlador catch coincidente.

Si se emite un error en una función y esta no incluye un controlador catch, Flash Player abandona esta función y cualquier otra que realice llamadas hasta que encuentra un bloque catch. Durante este proceso, se realizan llamadas a controladores finally en todos los niveles.

Nota: Si en un bloque try hay un distribuidor de eventos que llama al controlador de eventos, el bloque catch no detecta el error si se inicia en el controlador de eventos. Cualquier error generado a partir de ese momento se puede detectar mediante LoaderInfo.uncaughtErrorEvents

Parámetros
error:* — Expresión emitida desde una sentencia throw, normalmente una instancia de la clase Error o una de sus subclases.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ejemplo demuestra una sentencia try..catch. El código que se encuentra dentro del bloque try incluye una operación no permitida. Una sprite no puede añadirse como elemento secundario de sí misma. Como resultado, Flash Player emite una excepción y pasa un objeto de tipo ArgumentError al bloque catch correspondiente.
import flash.display.Sprite;

var spr:Sprite = new Sprite();
try {
	spr.addChild(spr);
}
catch (e:ArgumentError) {
	trace (e); // ArgumentError: Error #2024: An object may not be added as a child of itself.
}
En el ejemplo siguiente, los objetos RecordSetException y MalformedRecord son subclases de la clase Error.
class RecordSetException extends Error { 
	public function RecordSetException () {
		message = "Record set exception occurred."; 
	}
}

class MalformedRecord extends Error { 
	public function MalformedRecord {
		message = "Malformed record exception occurred."; 
	}
}
En el método sortRows() de la clase RecordSet se emite uno de los objetos de error definidos anteriormente, según el tipo de excepción que se haya producido. El ejemplo siguiente muestra qué aspecto puede tener este código:
class RecordSet { 
	public function sortRows() { 
		var returnVal:Number = randomNum(); 
		if (returnVal == 1) { 
			throw new RecordSetException(); 
		} 
		else if (returnVal == 2) { 
			throw new MalformedRecord(); 
		} 
	}
	public function randomNum():Number { 
		return Math.round(Math.random() * 10) % 3; 
	}
}
Por último, el código siguiente invoca el método sortRows() en una instancia de la clase RecordSet. Define bloques catch para cada tipo de objeto de error emitido por sortRows().
import RecordSet; 
var myRecordSet:RecordSet = new RecordSet();
try { 
	myRecordSet.sortRows(); 
	trace("everything is fine"); 
} 
catch (e:RecordSetException) { 
	trace(e.toString()); 
} 
catch (e:MalformedRecord) { 
	trace(e.toString()); 
}

Elementos de API relacionados

use namespaceDirectiva 
Uso

use namespace ns1[, ns2, ...nsN]

Provoca que los espacios de nombre especificados se añadan al conjunto de espacios de nombre abiertos. Los espacios de nombre especificados se eliminan del conjunto de espacios de nombre abiertos cuando se sale del bloque de código actual. La directiva use namespace puede aparecer en el nivel superior de un programa, una definición de paquete o una definición de clase.

Parámetros
nsN:Namespace — Uno o varios espacios de nombre que se van a añadir al conjunto de espacios de nombre abiertos.

Elementos de API relacionados

varPalabra clave de definición 
Uso

var variableName [= value1][...,variableNameN[=valueN]] 

Especifica una variable. Si declara variables en una función, las variables son locales. Se definen para la función y caducan al finalizar la llamada a la función.

No puede declarar una variable que se encuentra en el ámbito de otro objeto como variable local.

my_array.length = 25; // ok 
var my_array.length = 25; // syntax error 

Puede asignar un tipo de datos a una variable añadiendo el carácter de dos puntos seguido del tipo de datos.

Puede declarar múltiples variables en una sentencia, separando las declaraciones con comas (si bien esta sintaxis puede reducir la claridad del código):

var first:String = "Bart", middle:String = "J.", last:String = "Bartleby";

Parámetros
variableName:* — Un identificador.

Ejemplo
Cómo utilizar este ejemplo
El siguiente ActionScript crea un nuevo conjunto de nombres de productos. Array.push agrega un elemento al final del conjunto.
var product_array:Array = new Array("Studio", "Dreamweaver", "Flash", "ColdFusion", "Contribute", "Breeze"); 
product_array.push("Flex"); 
trace(product_array); 
// Studio,Dreamweaver,Flash,ColdFusion,Contribute,Breeze,Flex

Elementos de API relacionados

whileSentencia 
Uso

while (condition) { 
	// statement(s)
}

Evalúa una condición y, si esta da como resultado true, ejecuta una o varias sentencias antes de volver a ejecutar el bucle para evaluar la condición nuevamente. Después de que la condición dé como resultado false, se omiten las sentencias y finaliza el bucle.

La sentencia while ejecuta la siguiente serie de pasos. Cada repetición de pasos del 1 al 4 se denomina repetición del bucle. La condición se comprueba al principio de cada repetición, tal y como se muestra en los siguientes pasos:

  1. Se evalúa la expresión condition.
  2. Si condition da como resultado true o un valor que se convierte en el valor booleano true, por ejemplo, un número distinto de cero, vaya al paso 3. De lo contrario, se completa la sentencia while y se reanuda la ejecución en la sentencia que hay a continuación del bucle while.
  3. Ejecute las sentencias del bloque. Si se detecta una sentencia continue, se omite el resto de sentencias y se continúa con el paso 1. Si se detecta una sentencia break, la sentencia while se completa y la ejecución se reanuda en la siguiente sentencia después del bucle while.
  4. Vaya al paso 1.

La reproducción indefinida suele utilizarse para ejecutar una acción mientras la variable de contador sea inferior al valor especificado. Al final de cada bucle se incrementa el contador hasta que se alcanza el valor especificado. En dicho punto, condition ya no es true y finaliza el bucle.

Las llaves ({}) que encierran las sentencias que va a ejecutar la sentencia while no son necesarias si solo se va a ejecutar una sentencia.

Parámetros
condition:Boolean — Expresión que da como resultado true o false.

Ejemplo
Cómo utilizar este ejemplo
En el ejemplo siguiente, la sentencia while se utiliza para comprobar una expresión. Cuando el valor de i es menor que 20, se realizará un seguimiento de dicho valor (i). Cuando la condición deja de ser true, se bucle finaliza.
var i:Number = 0; 
while (i < 20) { 
	trace(i); 
	i += 3; 
}
/*
0 
3 
6 
9 
12
15 
18
*/

Elementos de API relacionados

withSentencia 
Uso

with (object:Object) { 
	// statement(s)
}

Establece el objeto predeterminado que debe utilizarse para la ejecución de una o varias sentencias, lo que, en potencia, reduce la cantidad de código que es preciso escribir.

El parámetro object se convierte en el contexto en el que se leen las propiedades, variables y funciones del parámetro statement(s). Por ejemplo, si object es my_array y dos de las propiedades especificadas son length y concat, dichas propiedades se leen automáticamente como my_array.length y my_array.concat. En otro ejemplo, si object es state.california, cualquier acción o sentencia dentro de la sentencia with se llama desde dentro de la instancia california.

Para buscar el valor de un identificador en el parámetro statement(s), ActionScript empieza al principio de la cadena de ámbito especificada por object y busca el identificador en cada nivel de la cadena de ámbito, en un orden específico.

La cadena de ámbito que utiliza la sentencia with para dirigirse a los identificadores empieza con el primer elemento de la siguiente lista y continúa hasta el último elemento:

  • El objeto especificado en el parámetro object de la sentencia with más interna
  • El objeto especificado en el parámetro object en la sentencia with más externa
  • El objeto Activation (un objeto temporal que se crea automáticamente cuando el script llama a una función que contiene las variables locales a las que se llama en la función)
  • El objeto que contiene el script que se está ejecutando
  • El objeto Global (objetos incorporados como Math y String)

Para establecer una variable dentro de una sentencia with, debe haber declarado la variable fuera de la sentencia with o debe introducir la ruta de acceso completa a la línea de tiempo en la que desea incluir la variable. Si establece una variable en una sentencia with sin declararla, la sentencia with buscará el valor según la cadena de ámbito. Si la variable no existe ya, se establecerá el nuevo valor en la línea de tiempo desde la que se ha llamado a la sentencia with.

Parámetros
object:Object — Una instancia de un objeto o clip de película de ActionScript.

Ejemplo
Cómo utilizar este ejemplo
El ejemplo siguiente establece las propiedades _x e _y de la instancia someOther_mc y, a continuación, indica a someOther_mc que pase al fotograma 3 y se detenga. with (someOther_mc) { _x = 50; _y = 100; gotoAndStop(3); } El fragmento de código siguiente muestra cómo escribir el código anterior sin utilizar una sentencia with. someOther_mc._x = 50; someOther_mc._y = 100; someOther_mc.gotoAndStop(3); La sentencia with resulta útil para acceder a múltiples elementos de una lista de cadena de ámbito simultáneamente. En el ejemplo siguiente, el objeto Math incorporado se sitúa delante de la cadena de ámbito. Establecer Math como objeto predeterminado resuelve los identificadores cos, sin y PI a Math.cos, Math.sin y Math.PI, respectivamente. Los identificadores a, x, y y r no son métodos ni propiedades del objeto Math, pero dado que existen en el ámbito de activación de objetos de la función polar(), se resuelven en las variables locales correspondientes.
function polar(r:Number):void { 
	var a:Number, x:Number, y:Number; 
	with (Math) { 
		a = PI * pow(r, 2); 
		x = r * cos(PI); 
		y = r * sin(PI / 2); 
	} 
	trace("area = " + a); 
	trace("x = " + x); 
	trace("y = " + y); 
} polar(3);
/* 
area = 28.2743338823081 
x = -3 
y = 3
*/

[ X ]¿Por qué hay texto en inglés?
Cierto contenido de la Referencia de ActionScript 3.0 se muestra en inglés

No todo el contenido de la Referencia de ActionScript 3.0 se traduce a todos los idiomas. Si un elemento del lenguaje no se traduce, aparecerá en inglés. Por ejemplo, la clase ga.controls.HelpBox no está traducida en ningún idioma. Por lo tanto, en la versión en español de la referencia, la clase ga.controls.HelpBox aparecerá en inglés.