Guida di riferimento di ActionScript® 3.0 per la piattaforma Adobe® Flash®
Home  |  Nascondi elenco pacchetti e classi |  Pacchetti  |  Classi  |  Novità  |  Indice  |  Appendici  |  Perché in inglese?
Filtri: AIR 30.0 e versioni precedenti, Flash Player 30.0 e versioni precedenti, Flash Lite 4
Flex 4.6 e versioni precedenti, Flash Pro CS6 e versioni precedenti
Nascondi filtri
 

Operatori 

Pacchettix

Primo livello
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

Elementi del linguaggio

Costanti globali
Funzioni globali
Operatori
Istruzioni, parole chiave e direttive
Tipi speciali

Appendici

Novità
Errori del compilatore
Avvisi del compilatore
Errori runtime
Migrazione a ActionScript 3
Set di caratteri supportati
Tag solo di MXML
Elementi XML di Motion
Tag Timed Text
Elenco degli elementi obsoleti
Costanti di implementazione dell’accessibilità
Utilizzare gli esempi ActionScript
Note legali

Classi 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

Gli operatori simbolici sono caratteri che specificano la modalità di combinazione, confronto o modifica dei valori di un’espressione.


 Altri
 []array accessInizializza un nuovo array o un array multidimensionale con gli elementi specificati (a0 e così via) oppure accede agli elementi di un array.
  asValuta se un’espressione specificata dal primo operando è un membro del tipo di dati specificato dal secondo operando.
 ,commaValuta expression1, quindi expression2 e così via.
 ?:conditionalRestituisce expression1 e se il valore di expression1 è true, il risultato è il valore di expression2; in caso contrario, il risultato è il valore di expression3.
  deleteElimina la proprietà dell’oggetto specificata da reference; il risultato è true se la proprietà non esiste dopo il completamento dell’operazione, altrimenti è false.
 .dotAccede a variabili di classe e metodi, ottiene e imposta proprietà di oggetto e delimita i pacchetti o le classi importate.
  inValuta se una proprietà appartiene a un oggetto specifico.
  instanceofValuta se la catena di prototipi di un’espressione include l’oggetto prototipo di function.
  isValuta se un oggetto è compatibile con un tipo di dati, una classe o un’interfaccia specifica.
 ::name qualifierIdentifica lo spazio dei nomi di una proprietà, un metodo, una proprietà XML o un attributo XML.
  newCrea una nuova istanza di classe.
 {}object initializerCrea un nuovo oggetto e lo inizializza con le coppie di proprietà name e value specificate.
 ()parenthesesEsegue un’operazione di raggruppamento su uno o più parametri, esegue una valutazione sequenziale delle espressioni, oppure racchiude uno o più parametri e li passa come argomenti a una funzione che precede le parentesi.
 /RegExp delimiterSe viene utilizzato prima e dopo dei caratteri, indica che i caratteri hanno un valore letterale e devono essere considerati come espressione regolare (RegExp) e non come variabile, stringa, valore numerico o un altro elemento ActionScript.
 :typeUtilizzato per l’assegnazione di un tipo di dati; questo operatore specifica il tipo di variabile, il tipo di funzione restituito o il tipo di parametro di funzione.
  typeofValuta expression e restituisce una stringa che specifica il tipo di dati dell’espressione.
  voidValuta un’espressione, quindi ne scarta il valore e restituisce undefined.
 Aritmetici
 +additionAggiunge le espressioni numeriche.
 --decrementSottrae 1 dall’operando.
 /divisionDivide expression1 per expression2.
 ++incrementAggiunge 1 a un’espressione.
 %moduloCalcola il resto di expression1 diviso per expression2.
 *multiplicationMoltiplica due espressioni numeriche.
 -subtractionUtilizzato per negare o sottrarre.
 Assegnazione
 =assignmentAssegna il valore di expression2 (l’operando a destra) alla variabile, all’elemento di array o alla proprietà in expression1.
 Assegnazione composta aritmetica
 +=addition assignmentAssegna a expression1 il valore di expression1 + expression2.
 /=division assignmentAssegna a expression1 il valore di expression1 / expression2.
 %=modulo assignmentAssegna a expression1 il valore di expression1 % expression2.
 *=multiplication assignmentAssegna a expression1 il valore di expression1 * expression2.
 -=subtraction assignmentAssegna a expression1 il valore di expression1 - expression2.
 Assegnazione composta bit a bit
 &=bitwise AND assignmentAssegna a expression1 il valore di expression1 & expression2.
 <<=bitwise left shift and assignmentEsegue un’operazione di spostamento bit a bit a sinistra (<<=) e memorizza il contenuto come risultato in expression1.
 |=bitwise OR assignmentAssegna a expression1 il valore di expression1 | expression2.
 >>=bitwise right shift and assignmentEsegue un’operazione di spostamento bit a bit a destra e memorizza il risultato in expression.
 >>>=bitwise unsigned right shift and assignmentEsegue un’operazione di spostamento bit a bit a destra senza segno e memorizza il risultato in expression.
 ^=bitwise XOR assignmentAssegna a expression1 il valore di expression1 ^ expression2.
 Bit a bit
 &bitwise ANDConverte expression1 e expression2 in numeri interi senza segno a 32 bit ed esegue un’operazione AND booleana su ogni bit dei parametri convertiti in numeri interi.
 <<bitwise left shiftConverte expression1 e shiftCount in numeri interi a 32 bit e sposta tutti i bit in expression1 a sinistra per il numero di posti specificato dal numero intero risultante dalla conversione di shiftCount.
 ~bitwise NOTConverte expression in un numero intero con segno a 32 bit, quindi applica un complemento a uno bit a bit.
 |bitwise ORConverte expression1 e expression2 in numeri interi senza segno a 32 bit e inserisce un 1 in ogni posizione di bit nella quale i bit corrispondenti di expression1 o expression2 sono 1.
 >>bitwise right shiftConverte expression e shiftCount in numeri interi a 32 bit e sposta tutti i bit in expression a destra per il numero di posti specificato dal numero intero risultante dalla conversione di shiftCount.
 >>>bitwise unsigned right shiftUguale all’operatore di spostamento a destra (>>) ad eccezione del fatto che non conserva il segno dell’espressione originale poiché nei bit a sinistra vengono inseriti dei valori 0.
 ^bitwise XORConverte expression1 e expression2 in numeri interi senza segno a 32 bit e restituisce un 1 in ogni posizione di bit nella quale i bit corrispondenti di expression1 o expression2, ma non entrambi, sono 1.
 Commento
 /*..*/block comment delimiterDelimita una o più righe di commento di script.
 //line comment delimiterIndica l’inizio di un commento di script.
 Confronto
 ==equalityConfronta due espressioni per verificarne l’uguaglianza.
 >greater thanEsegue un confronto tra due espressioni e determina se expression1 è maggiore di expression2; in caso affermativo, l’operatore restituisce true.
 >=greater than or equal toConfronta due espressioni e determina se expression1 è maggiore di o uguale a expression2 (true) o se expression1 è minore di expression2 (false).
 !=inequalityProva l’esatto opposto dell’ operatore di uguaglianza (==).
 <less thanEsegue un confronto tra due espressioni e determina se expression1 è minore di expression2; in caso affermativo, l’operatore restituisce true.
 <=less than or equal toEsegue un confronto tra due espressioni e determina se expression1 è minore o uguale a expression2; in caso affermativo, l’operatore restituisce true.
 ===strict equalityVerifica l’uguaglianza di due espressioni, ma non esegue la conversione automatica dei dati.
 !==strict inequalityProva l’esatto opposto dell’ operatore di uguaglianza rigorosa (===).
  Logici
 &&logical ANDRestituisce expression1 se è false o può essere convertita in false, in caso contrario restituisce expression2.
 &&=logical AND assignmentAssegna a expression1 il valore di expression1 && expression2.
 !logical NOTInverte il valore booleano di una variabile o espressione.
 ||logical ORRestituisce expression1 se è true o può essere convertita in true, in caso contrario restituisce expression2.
 ||=logical OR assignmentAssegna a expression1 il valore di expression1 || expression2.
  Stringa
 +concatenationConcatena (combina) più stringhe.
 +=concatenation assignmentAssegna a expression1 il valore di expression1 + expression2.
 "string delimiterSe utilizzate prima e dopo i caratteri, indicano che i caratteri hanno un valore letterale e devono essere considerati come una stringa, non una variabile, un valore numerico o un altro elemento ActionScript.
  XML
 @attribute identifierIdentifica gli attributi di un oggetto XML o XMLList.
 { }braces (XML)Valuta un’espressione utilizzata in un inizializzatore XML o XMLList.
 [ ]brackets (XML)Accede a una proprietà o a un attributo di un oggetto XML o XMLList.
 +concatenation (XMLList)Concatena (combina) dei valori XML o XMLList in un oggetto XMLList.
 +=concatenation assignment (XMLList)Assegna aexpression1, che è un oggetto XMLList, il valore di expression1 + expression2.
  delete (XML)Elimina gli elementi o attributi XML specificati da reference.
 ..descendant accessorVa agli elementi discendenti di un oggetto XML o XMLList, oppure (se combinato con l’operatore @) trova gli attributi corrispondenti dei discendenti.
 .dot (XML)Va agli elementi secondari di un oggetto XML o XMLList, oppure (se combinato con l’operatore @) restituisce gli attributi di un oggetto XML o XMLList.
 ( )parentheses (XML)Valuta un’espressione utilizzata in un costrutto XML E4X.
 < >XML literal tag delimiterDefinisce un tag XML in un letterale XML.
Descrizione degli operatori
+ addition Operatore
Uso

expression1 + expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Aggiunge le espressioni numeriche. Se entrambe le espressioni sono numeri interi, la somma è un numero intero; se almeno una delle due espressioni è un numero a virgola mobile, la somma è un numero a virgola mobile.

Se una delle espressioni è una stringa, tutte le altre espressioni vengono convertite in stringhe e concatenate anziché sommate. Altrimenti, se un’espressione non è un numero, Flash® Player la converte in un numero.

Operandi
expression1:Number — Un valore da sommare.
expression2:Number — Un valore da sommare.

Risultato
Number — Un numero intero o un numero a virgola mobile.

Esempio
Come utilizzare questo esempio
Questa istruzione somma i numeri interi 2 e 3:
trace(2 + 3); // 5
Questa istruzione somma i numeri a virgola mobile 2.5 e 3.25:
trace(2.5 + 3.25); // 5.75
Questo esempio mostra che se una delle espressioni è una stringa, tutte le altre espressioni vengono convertite in stringhe e concatenate:
trace("Number " + 8 + 0); // Number 80
per le variabili associate ai campi di testo dinamici e di input il tipo di dati è String. Nell’esempio seguente, la variabile deposit è un campo di testo di input sullo stage. Dopo che un utente ha immesso una cifra di deposito, lo script tenta di aggiungere deposit a oldBalance. Tuttavia, poiché deposit è un tipo di dati String, lo script concatena (ovvero, combina per formare un’unica stringa) i valori delle variabili anziché sommarli.
var oldBalance:Number = 1345.23; 
var currentBalance = deposit_txt.text + oldBalance; 
trace(currentBalance); 
Ad esempio, se un utente immette 475 nel campo di testo deposit, l’istruzione trace() invia il valore 4751345.23 al pannello Output. Per correggere questo inconveniente, utilizzate la funzione Number() per convertire la stringa in numero, come nell’esempio seguente:
var oldBalance:Number = 1345.23; 
var currentBalance:Number = Number(deposit_txt.text) + oldBalance;
trace(currentBalance);

Elementi API correlati

+= addition assignment Operatore  
Uso

expression1 += expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 + expression2. Ad esempio, le due istruzioni seguenti danno lo stesso risultato:

x += y; 
x = x + y; 
Tutte le regole dell’operatore di addizione (+) si applicano anche all’operatore di assegnazione addizione (+=).

Operandi
expression1:Number — Un numero.
expression2:Number — Un numero.

Risultato
Number — Il risultato dell’addizione.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato l’uso numerico dell’operatore di assegnazione addizione (+=):
var x:Number = 5; 
var y:Number = 10; 
x += y; 
trace(x); // 15 

Elementi API correlati

[] array access Operatore  
Uso

myArray = [a0, a1,...aN]
myArray[i] = value 
myObject[propertyName]

Versioni runtime: Flash Player 9

Inizializza un nuovo array o un array multidimensionale con gli elementi specificati (a0 e così via) oppure accede agli elementi di un array. L’operatore di accesso agli array consente di impostare e recuperare in modo dinamico nomi di istanza, variabili e oggetti, e di accedere alle proprietà dell’oggetto.

Uso 1: un array è un oggetto le cui proprietà sono definite elementi, ciascuno identificato mediante un numero chiamato indice. Quando create un array, dovete racchiudere gli elementi tra gli operatori di accesso all’array ([]) (parentesi quadre). Un array può contenere elementi di vari tipi; Ad esempio, l’array seguente, denominato employee, ha tre elementi: il primo è un numero, e il secondo e il terzo sono stringhe (racchiuse tra virgolette):

var employee:Array = [15, "Barbara", "Jay"]; 
Per simulare array multidimensionali, potete nidificare più parentesi quadre, fino a una profondità di 256 livelli. Il codice seguente consente di creare un array chiamato ticTacToe con tre elementi; ognuno di questi è a sua volta un array composto da tre elementi:
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; 
			
/* Select Debug > List Variables in test mode 
to see a list of the array elements.*/ 
Uso 2: consente di racchiudere l’indice di ogni elemento tra parentesi quadre ([]) per accedervi direttamente; è possibile aggiungere un nuovo elemento a un array, oppure cambiare o recuperare il valore di un elemento esistente. Il primo indice di un array è sempre 0, come nell’esempio seguente:
var my_array:Array = new Array(); 
my_array[0] = 15; 
my_array[1] = "Hello"; 
my_array[2] = true; 
Potete utilizzare le parentesi quadre per aggiungere un quarto elemento, come nell’esempio seguente:
my_array[3] = "George"; 
Le parentesi quadre consentono anche di accedere a un elemento in un array multidimensionale. Il primo set di parentesi quadre identifica l’elemento dell’array originale, il secondo set indica l’elemento dell’array nidificato. L’istruzione trace() seguente trova il terzo elemento (index 2) del secondo array (index 1).
var ticTacToe:Array = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]; 
trace(ticTacToe[1][2]); // 6 
Uso 3: l’operatore di accesso all’array consente di impostare e recuperare dinamicamente i valori della proprietà di un oggetto:
var obj:Object = new Object();
obj.prop1 = "foo";
trace(obj["prop" + 1]); // foo
obj.prop2 = "bar";
for (j in obj) {
	trace(obj[j]);
} 
/* Output of for loop: 
foo
bar */

Operandi
myArray:Object — Il nome di un array.
a0, a1,...aN:Object — Elementi di un array; qualsiasi istanza di oggetto o tipo nativo, compresi gli array nidificati.
i:Number — Un indice a numero intero superiore o uguale a 0.
myObject:Object — Il nome di un oggetto.
propertyName:String — Una stringa che dà il nome a una proprietà dell’oggetto.

Risultato
Object

Uso 1: un riferimento a un array.

Uso 2: un valore dell’array; un’istanza di oggetto o tipo nativo (comprese le istanze di array).

Uso 3: una proprietà dell’oggetto; un’istanza di oggetto o tipo nativo (comprese le istanze di array).


Esempio
Come utilizzare questo esempio
L’esempio seguente mostra due modi per creare un nuovo oggetto Array vuoto; la prima riga utilizza le parentesi:
var my_array:Array = []; 
var my_array:Array = new Array(); 

Nell’esempio seguente viene creato un array chiamato employee_array con tre elementi e viene modificato il terzo elemento dell’array.

var employee_array = ["Barbara", "George", "Mary"]; 
trace(employee_array); // Barbara,George,Mary 
employee_array[2] = "Sam"; 
trace(employee_array); // Barbara,George,Sam 
Nell’esempio seguente, viene valutata l’espressione contenuta tra parentesi quadre e il risultato viene utilizzato come nome della variabile da recuperare dall’oggetto obj:
var obj:Object = new Object();
obj.prop1 = "foo";
obj.prop2 = "bar";

for (var i:int = 1;i < 3;i++) {
	trace(obj["prop"+i]);
}
/* Output of for loop:
foo
bar */ 

Elementi API correlati

 as Operatore  
Uso

expression as datatype

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta se un’espressione specificata dal primo operando è un membro del tipo di dati specificato dal secondo operando. Se il primo operando è membro del tipo di dati, il risultato è il primo operando. Altrimenti, il risultato è il valore null.

L’espressione utilizzata per il secondo operando deve restituire un tipo di dati.

Operandi
expression:* — Il valore di cui verificare la compatibilità con il tipo di dati specificato.
datatype:Class — Il tipo di dati utilizzato per valutare l’operando expression. Il tipo speciale *, che significa "senza tipo", non può essere utilizzato.

Risultato
Object — Il risultato è expression se expression è membro del tipo di dati specificato in datatype. Altrimenti, il risultato è il valore null.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene creato un array semplice denominato myArray e viene utilizzato l’operatore as con vari tipi di dati.
public var myArray:Array = ["one", "two", "three"];
trace(myArray as Array);  // one,two,three
trace(myArray as Number); // null
trace(myArray as int);    // null

Elementi API correlati

= assignment Operatore  
Uso

expression1 = expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna il valore di expression2 (l’operando a destra) alla variabile, all’elemento di array o alla proprietà in expression1. L’assegnazione può avvenire in base al valore o al riferimento. L’assegnazione in base al valore copia il valore effettivo di expression2 e lo memorizza in expression1. L’assegnazione in base al valore viene utilizzata quando expression2 è un valore di base, ovvero è di tipo Boolean, Number, int, uint o String. L’assegnazione in base al riferimento memorizza un riferimento a expression2 in expression1 e viene comunemente utilizzata con l’operatore new. L’uso dell’operatore new crea un oggetto nella memoria e assegna a una variabile un riferimento a quella posizione di memoria.

Nota: in ActionScript 3.0 tutti i valori (compresi quelli di base) sono oggetti e tutte le assegnazioni vengono eseguite in base al riferimento, ma gli oggetti di base hanno operatori speciali che consentono a tali oggetti di comportarsi come se fossero stati assegnati in base al valore.

Operandi
expression1:* — Una variabile, un elemento di array, o la proprietà di un oggetto.
expression2:* — Un valore di qualsiasi tipo.

Risultato
Object — Il valore assegnato, expression2.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzata l’assegnazione in base al valore per assegnare il valore 5 alla variabile z.
var z:Number = 5;
Nell’esempio seguente viene utilizzata l’assegnazione in base al valore per assegnare il valore "hello" alla variabile z:
var x:String;
x = "hello";
Nell’esempio seguente viene utilizzata l’assegnazione in base al riferimento per creare la variabile moonsOfJupiter, che contiene un riferimento a un oggetto Array appena creato. L’assegnazione in base al valore viene quindi utilizzata per copiare il valore "Callisto" nel primo elemento dell’array a cui fa riferimento la variabile moonsOfJupiter:
var moonsOfJupiter:Array = new Array();
moonsOfJupiter[0] = "Callisto";
Nell’esempio seguente viene utilizzata l’assegnazione in base al riferimento per creare un nuovo oggetto e per assegnare alla variabile mercury un riferimento a tale oggetto. Quindi, viene utilizzata l’assegnazione in base al valore per assegnare il valore 3030 alla proprietà diameter dell’oggetto mercury:
var mercury:Object = new Object();
mercury.diameter = 3030; // in miles
trace(mercury.diameter); // 3030
Nell’esempio seguente viene ripreso l’esempio precedente e viene creata una variabile di nome merkur (il termine tedesco per mercury) e lo assegna al valore di mercury. In questo modo vengono create due variabili che fanno riferimento allo stesso oggetto in memoria: pertanto, è possibile utilizzare indistintamente una delle due variabili per accedere alle proprietà dell’oggetto. A questo punto, potete modificare la proprietà diameter in modo che utilizzi i chilometri anziché le miglia:
var merkur:Object = mercury;
merkur.diameter = 4878;  // in kilometers
trace(mercury.diameter); // 4878

Elementi API correlati

@ attribute identifier Operatore  
Uso

 myXML.@attributeName 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Identifica gli attributi di un oggetto XML o XMLList. Ad esempio, myXML.@id identifica gli attributi denominati id per l’oggetto XML myXML. Potete anche utilizzare la sintassi seguente per accedere agli attributi: myXML.attribute("id"), myXML["@id"] emyXML.@["id"]. È consigliata la sintassi myXML.@id. Per restituire un oggetto XMLList di tutti i nomi di attributi, utilizzate @*. Per restituire un attributo con un nome che corrisponde a una parola riservata di ActionScript, utilizzate il metodo attribute() invece dell’operatore @.

Operandi
attributeName:* — Il nome dell’attributo.

Esempio
Come utilizzare questo esempio
Nel primo esempio viene illustrato come utilizzare l’operatore @ (chiocciola) per identificare un attributo di un elemento:
var myXML:XML = 
	<item id = "42">
		<catalogName>Presta tube</catalogName>
		<price>3.99</price>
	</item>;

trace(myXML.@id); // 42
Il seguente esempio restituisce tutti i nomi di attributo:
var xml:XML =<example id='123' color='blue'/>
 var xml2:XMLList = xml.@*;
 trace(xml2 is XMLList); // true
 trace(xml2.length());  // 2
 for (var i:int = 0; i < xml2.length(); i++)
 { 
	trace(typeof(xml2[i]));    // xml
	trace(xml2[i].nodeKind()); // attribute
	trace(xml2[i].name());     // id and color
 } 
L’esempio successivo restituisce un attributo con un nome che corrisponde a una parola riservata di ActionScript. Non potete utilizzare la sintassi xml.@class (perché class è una parola riservata di ActionScript). Dovete utilizzare la sintassi xml.attribute("class"):
var xml:XML = <example class='123'/>
trace(xml.attribute("class"));

Elementi API correlati

& bitwise AND Operatore  
Uso

expression1 & expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression1 e expression2 in numeri interi senza segno a 32 bit ed esegue un’operazione AND booleana su ogni bit dei parametri convertiti in numeri interi. I numeri a virgola mobile vengono convertiti in numeri interi scartando tutti i decimali. Il risultato è un nuovo numero intero a 32 bit.

Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
L’esempio seguente esegue un AND bit a bit di 13 (1101 binario) e 11 (1011 binario) confrontando le rappresentazioni in bit dei numeri. Il numero intero risultante è composto da una sequenza di bit, ciascuno dei quali è impostato su 1 solo se i bit di entrambi gli operandi della stessa posizione sono 1.
var insert:Number = 13; 
var update:Number = 11; 
trace(insert & update); // 9 (or 1001 binary) 
L’AND bit a bit di 13 (1101 binario) e 11 (1011 binario) è 9 perché solo nella prima e nell’ultima posizione è presente il numero 1 in numeri.
  1101
& 1011
  ----
  1001

Gli esempi seguenti mostrano il comportamento della conversione del valore restituito:

trace(0xFFFFFFFF); // 4294967295 
trace(0xFFFFFFFF & 0xFFFFFFFF); // -1 
trace(0xFFFFFFFF & -1); // -1 
trace(4294967295 & -1); // -1 
trace(4294967295 & 4294967295); // -1 

Elementi API correlati

&= bitwise AND assignment Operatore  
Uso

expression1 &= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 & expression2. Ad esempio, le due espressioni seguenti sono equivalenti:

x &= y; 
x = x & y; 

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
int — Il valore di expression1 & expression2.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene assegnato il valore 9 a x:
var x:Number = 15; 
var y:Number = 9; 
trace(x &= y); // 9 

Elementi API correlati

<< bitwise left shift Operatore  
Uso

expression1 << shiftCount

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression1 e shiftCount in numeri interi a 32 bit e sposta tutti i bit in expression1 a sinistra per il numero di posti specificato dal numero intero risultante dalla conversione di shiftCount. Le posizioni di bit che vengono svuotate in seguito a questa operazione vengono riempite con 0 e i bit spostati oltre l’estremità sinistra vengono scartati. Lo spostamento di un valore verso sinistra di una posizione equivale a moltiplicarlo per 2.

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Se il risultato è un numero intero negativo, viene generato un errore di runtime se tentate di assegnare il risultato a una variabile del tipo uint. Anche se ActionScript non ha un operatore di "spostamento a sinistra bit a bit senza segno", potete ottenere lo stesso effetto, ed evitare l’errore di runtime, utilizzando uint(expression1 << shiftCount):

var num1:uint = 0xFF;
var num2:uint = uint(num1 << 24); // uint() prevents runtime error

Operandi
expression1:Number — Un numero o un’espressione da spostare a sinistra.
shiftCount:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente, il numero intero 1 viene spostato di 10 bit verso sinistra:
x = 1 << 10
Il risultato dell’operazione di spostamento a sinistra bit a bit è 1024: dal momento che 1 decimale è uguale a 1 binario, 1 binario spostato a sinistra di 10 è 10000000000 binario, e 10000000000 binario è 1024 decimale.
   00000000001 binary 
<<          10 decimal
--------------
   10000000000 binary equals 1024 decimal 

Nell’esempio seguente, il numero intero 7 viene spostato di 8 bit verso sinistra:

x = 7 << 8
Il risultato dell’operazione di spostamento a sinistra bit a bit è 1792: dal momento che 7 decimale è uguale a 111 binario, 111 binario spostato a sinistra di 8 bit è 11100000000 binario, e 11100000000 binario è 1792 decimale.
   00000000111 binary 
<<           8 decimal
--------------
   11100000000 binary equals 1792 decimal 

L’istruzione trace seguente mostra che i bit sono stati spostati di tre posizioni verso sinistra:

// 1 binary == 0001 
// 8 binary == 1000 
trace(1 << 3); // 8 

Elementi API correlati

<<= bitwise left shift and assignment Operatore  
Uso

expression1 <<= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un’operazione di spostamento bit a bit a sinistra (<<=) e memorizza il contenuto come risultato in expression1. Le due espressioni seguenti sono equivalenti:

A <<= B
A = (A << B)

Operandi
expression1:Number — Un numero o un’espressione da spostare a sinistra.
expression2:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore spostamento a sinistra bit a bit e assegnazione (<<=) per spostare tutti i bit di una posizione verso sinistra:
var x:Number = 4; 
// Shift all bits one slot to the left. 
x <<= 1; 
trace(x); // 8 
// 4 decimal = 0100 binary 
// 8 decimal = 1000 binary 

Elementi API correlati

~ bitwise NOT Operatore  
Uso

~expression

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression in un numero intero con segno a 32 bit, quindi applica un complemento a uno bit a bit. In altre parole, nel risultato, ogni bit 0 viene impostato su 1 e ogni bit 1 viene impostato su 0. Il risultato è un numero intero a 32 bit con segno. Questo operatore è anche noto come operatore del complemento a uno o operatore del complemento bit a bit.

Ad esempio, il valore esadecimale 0x7777 è rappresentato da questo numero binario:

0111011101110111

La negazione bit a bit di quel valore esadecimale, ~0x7777, è questo numero binario:

1000100010001000

In formato esadecimale, questo è 0x8888. Di conseguenza, ~0x7777 è 0x8888.

Gli operatori bit a bit vengono più comunemente utilizzati per rappresentare i flag bit (valori booleani compressi in 1 bit ciascuno).

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Operandi
expression:Number — Un numero da convertire.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato un utilizzo possibile dell’operatore NOT bit a bit (~) con i flag bit:
var ReadOnlyFlag:int = 0x0001; // defines bit 0 as the read-only flag 
var flags:int = 0; 
trace(flags); 
/* To set the read-only flag in the flags variable, 
   the following code uses the bitwise OR: 
*/
flags |= ReadOnlyFlag; 
trace(flags); 
/* To clear the read-only flag in the flags variable, 
   first construct a mask by using bitwise NOT on ReadOnlyFlag. 
   In the mask, every bit is a 1 except for the read-only flag. 
   Then, use bitwise AND with the mask to clear the read-only flag. 
   The following code constructs the mask and performs the bitwise AND: 
*/ 
flags &= ~ReadOnlyFlag; 
trace(flags); 
// 0 1 0 

Elementi API correlati

| bitwise OR Operatore  
Uso

expression1 | expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression1 e expression2 in numeri interi senza segno a 32 bit e inserisce un 1 in ogni posizione di bit nella quale i bit corrispondenti di expression1 o expression2 sono 1.

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Operandi
expression1:Number — Un numero.
expression2:Number — Un numero.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Di seguito è riportato un esempio di operazione OR bit a bit (|):
// 15 decimal = 1111 binary 
var a:Number = 15; 
// 9 decimal = 1001 binary 
var b:Number = 9; 
// 1111 | 1001 = 1111 
trace(a | b); // returns 15 decimal (1111 binary) 
Fate attenzione a non confondere | (OR bit a bit) con || (OR logico).

Elementi API correlati

|= bitwise OR assignment Operatore  
Uso

expression1 |= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 | expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x |= y; 
x = x | y; 

Operandi
expression1:Number — Un numero da convertire.
expression2:Number — Un numero da convertire.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore di assegnazione OR bit a bit (|=):
// 15 decimal = 1111 binary 
var a:Number = 15; 
// 9 decimal = 1001 binary 
var b:Number = 9; 
// 1111 |= 1001 = 1111 
trace(a |= b); // returns 15 decimal (1111 binary) 

Elementi API correlati

>> bitwise right shift Operatore  
Uso

expression >> shiftCount

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression e shiftCount in numeri interi a 32 bit e sposta tutti i bit in expression a destra per il numero di posti specificato dal numero intero risultante dalla conversione di shiftCount. I bit che vengono spostati oltre l’estremità destra vengono scartati. Per conservare il segno dell’espressione originale, i bit a sinistra vengono sostituiti con 0 se il bit più significativo (ovvero quello all’estrema sinistra) di expression è 0, oppure con 1 se il bit più significativo è 1. Spostare un valore verso destra di una posizione equivale a dividere per 2 e scartare il resto.

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Operandi
expression:Number — Un numero o un’espressione da spostare a destra.
shiftCount:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
L’esempio seguente converte 65535 in un numero intero a 32 bit e lo sposta di 8 bit verso destra, producendo come risultato un valore decimale di 255:
var a:Number = 65535 >> 8; 
trace(a); // 255
65535 decimale equivale a 00000000000000001111111111111111 binario (sedici 0 seguiti da sedici 1); se si sposta verso destra di 8 bit, gli 8 bit meno significativi (ovvero quelli all’estrema destra) vengono scartato. Poiché 65535 è un numero positivo, le posizioni di bit liberate dallo spostamento (le 8 posizioni all’estrema destra) vengono riempite con 0. Il risultato è 00000000000000000000000011111111 (ventiquattro 0 seguiti da otto 1) binario, che rappresenta il numero intero 255 a 32 bit.
    00000000000000001111111111111111 binary (65535 decimal)
>>                                 8 decimal
--------------------
    00000000000000000000000011111111 binary (255 decimal)
L’esempio seguente converte -8 in un numero intero a 32 bit e lo sposta di 1 bit verso destra, producendo come risultato un valore decimale di -4:
var a:Number = -8 >> 1;
trace(a); // -4
-8 decimale equivale a 11111111111111111111111111111000 binario (ventinove 1 seguiti da tre 0); se si sposta verso destra di 1 bit, il bit meno significativo (quello all’estrema destra) viene scartato. Poiché -8 è un numero negativo, la posizione di bit liberata dallo spostamento (l’ultima posizione all’estrema sinistra) viene riempita con 1. Il risultato è 11111111111111111111111111111100 (trenta 1 seguiti da due 0) binario, che rappresenta il numero intero -4 a 32 bit.
    11111111111111111111111111111000 binary (-8 decimal)
>>							    1 decimal
--------------------
    11111111111111111111111111111100 binary (-4 decimal)

Elementi API correlati

>>= bitwise right shift and assignment Operatore  
Uso

expression >>= shiftCount

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un’operazione di spostamento bit a bit a destra e memorizza il risultato in expression.

Le due istruzioni seguenti sono equivalenti:

A >>= B; 
A = (A >> B);

Operandi
expression:Number — Un numero o un’espressione da spostare a destra.
shiftCount:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Il codice seguente utilizza l’ operatore spostamento a destra bit a bit e di assegnazione(>>=):
function convertToBinary(numberToConvert:Number):String { 
	var result:String = ""; 
	for (var i = 0; i < 32; i++) { 
		// Extract least significant bit using bitwise AND. 
		var lsb:Number = numberToConvert & 1; 
		// Add this bit to the result.
		result = (lsb ? "1" : "0")+result; 
		// Shift numberToConvert right by one bit, to see next bit. 
		numberToConvert >>= 1; 
	} 
	return result; 
} 
trace(convertToBinary(479)); 
// Returns the string 00000000000000000000000111011111. 
// This string is the binary representation of the decimal number 479.

Elementi API correlati

>>> bitwise unsigned right shift Operatore  
Uso

expression >>> shiftCount

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Uguale all’operatore di spostamento a destra (>>) ad eccezione del fatto che non conserva il segno dell’espressione originale poiché nei bit a sinistra vengono inseriti dei valori 0.

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero intero a 32 bit senza segno, in modo che sia un numero intero compreso tra 0 e 4294967295.

Nota: ActionScript non ha un operatore di "spostamento a sinistra bit a bit senza segno" complementare, ma potete ottenere lo stesso effetto utilizzando uint(expression << shiftCount).

Operandi
expression:Number — Un numero o un’espressione da spostare a destra.
shiftCount:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
uint — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
L’esempio seguente converte -1 in un numero intero a 32 bit e lo sposta di 1 bit verso destra:
var a:Number = -1 >>> 1; 
trace(a); // 2147483647 
-1 decimale è 11111111111111111111111111111111 binario (trentadue volte 1), e quando si sposta verso destra (senza segno) di 1 bit, il bit meno significativo (ovvero quello all’estrema destra) viene scartato mentre quello più significativo (ovvero quello all’estrema sinistra) viene riempito con uno 0. Il risultato è 01111111111111111111111111111111 binario che rappresenta il numero intero a 2147483647 a 32 bit.

Elementi API correlati

>>>= bitwise unsigned right shift and assignment Operatore  
Uso

expression >>>= shiftCount

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un’operazione di spostamento bit a bit a destra senza segno e memorizza il risultato in expression. Le due istruzioni seguenti sono equivalenti:

A >>>= B; 
A = (A >>> B); 

Operandi
expression:Number — Un numero o un’espressione da spostare a destra.
shiftCount:Number — Un numero o un’espressione convertibile in un numero intero compreso tra 0 e 31.

Risultato
uint — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
L’esempio seguente converte -1 in un numero intero a 32 bit e lo sposta di 1 bit verso destra:
var a:Number = -1;
a >>>= 1; 
trace(a); // 2147483647 
-1 decimale è 11111111111111111111111111111111 binario (trentadue volte 1), e quando si sposta verso destra (senza segno) di 1 bit, il bit meno significativo (ovvero quello all’estrema destra) viene scartato mentre quello più significativo (ovvero quello all’estrema sinistra) viene riempito con uno 0. Il risultato è 01111111111111111111111111111111 binario che rappresenta il numero intero a 2147483647 a 32 bit.

Elementi API correlati

^ bitwise XOR Operatore  
Uso

expression1 ^ expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Converte expression1 e expression2 in numeri interi senza segno a 32 bit e restituisce un 1 in ogni posizione di bit nella quale i bit corrispondenti di expression1 o expression2, ma non entrambi, sono 1.

Un numero a virgola mobile viene convertito in numero intero scartando tutti i decimali. Un numero intero positivo viene convertito in valore esadecimale senza segno con un valore massimo di 4294967295 o 0xFFFFFFFF; un valore maggiore del massimo perde le cifre più significative quando viene convertito, in modo da rimanere un numero a 32 bit. Un numero negativo viene convertito in un valore esadecimale senza segno tramite la notazione del complemento a due, con il minimo pari a -2147483648 o 0x800000000; un numero minore del minimo viene convertito nel complemento a due con maggiore precisione, prima di perdere le cifre più significative.

Il risultato viene interpretato come numero di complemento a due a 32 bit, in modo che sia un numero intero compreso tra -2147483648 e 2147483647.

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore XOR bit a bit sui decimali 15 e 9, e assegnato il risultato alla variabile a:
// 15 decimal = 1111 binary 
// 9 decimal = 1001 binary 
var a:Number = 15 ^ 9; 
trace(a); 
// 1111 ^ 1001 = 0110 
// returns 6 decimal (0110 binary) 

Elementi API correlati

^= bitwise XOR assignment Operatore  
Uso

expression1 ^= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 ^ expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x ^= y 
x = x ^ y 

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
int — Il risultato dell’operazione bit a bit.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra un’operazione assegnazione XOR bit a bit (^=):
// 15 decimal = 1111 binary 
var a:Number = 15; 
// 9 decimal = 1001 binary 
var b:Number = 9; 
trace(a ^= b); // returns 6 decimal (0110 binary) 

Elementi API correlati

/*..*/ block comment delimiter Operatore  
Uso

/* comment */
/* comment
   comment */

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Delimita una o più righe di commento di script. I caratteri racchiusi tra il delimitatore di apertura (/*) e quello di chiusura (*/) vengono considerati commenti e ignorati dal compilatore ActionScript. Utilizzate questi delimitatori per identificare i commenti su più righe successive; per i commenti a riga singola, utilizzate il delimitatore //.

Viene generato un messaggio di errore se omettete il delimitatore di chiusura del blocco di commento (*/) oppure tentate di nidificare dei commenti. Dopo un delimitatore di apertura (/*), il primo delimitatore di chiusura (*/) chiude il commento, indipendentemente dal numero di delimitatori di apertura che lo precedono.

Operandi
comment:* — Qualsiasi carattere.

Esempio
Come utilizzare questo esempio
Lo script seguente utilizza i delimitatori di blocco di commenti all’inizio dello script:
/* records the X and Y positions of 
the ball and bat movie clips */ 
var ballX:Number = ball_mc._x; 
var ballY:Number = ball_mc._y; 
var batX:Number = bat_mc._x; 
var batY:Number = bat_mc._y; 
Il seguente tentativo di nidificare commenti genera un messaggio di errore:
/* This is an attempt to nest comments. 
/* But the first closing tag will be paired 
with the first opening tag */ 
and this text will not be interpreted as a comment */ 

Elementi API correlati

{ } braces (XML) Operatore  
Uso

 myXML = <{tagName} {attributeName} = {attributeValue}>{content}

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta un’espressione utilizzata in un inizializzatore XML o XMLList. Un inizializzatore XML o XMLList è un valore letterale assegnato a una variabile del tipo XML o XMLList. Un’espressione delimitata dagli operatori XML { e } può essere utilizzata in un inizializzatore XML o XMLList al posto di valori o nomi letterali. Potete utilizzare un’espressione al posto di tagName, attributeName, attributeValue e content.

Operandi
myXML:* — Un oggetto XML o XMLList.
tagName:* — Un’espressione che restituisce il nome di un tag XML.
attributeName:* — Un’espressione che restituisce il nome di un attributo XML.
attributeValue:* — Un’espressione che restituisce il valore di un attributo XML.
content:* — Un’espressione che restituisce il contenuto di un tag XML.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra come utilizzare gli operatori { e } nella definizione di un letterale XML:
var tagname:String = "item"; 
var attributename:String = "id"; 
var attributevalue:String = "5"; 
var content:String = "Chicken"; 
var x:XML = <{tagname} {attributename}={attributevalue}>{content}</{tagname}>; 
trace(x.toXMLString()); // <item id="5">Chicken</item>

Elementi API correlati

[ ] brackets (XML) Operatore  
Uso

 myXML[expression]

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Accede a una proprietà o a un attributo di un oggetto XML o XMLList. L’operatore parentesi quadre permette di accedere a nomi di proprietà che non sono accessibili con l’ operatore punto (.).

Operandi
myXML:* — Un oggetto XML o XMLList.
expression:* — Un’espressione che restituisce il nome di un tag o un attributo XML.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato come utilizzare gli operatori[ e ] per accedere a una proprietà XML che non è accessibile mediante l’operatore punto a causa del trattino nel nome del tag:
var myXML:XML = <a><foo-bar>44</foo-bar></a>;
trace(myXML["foo-bar"]);

Elementi API correlati

, comma Operatore  
Uso

(expression1 , expression2 [, expressionN... ])

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta expression1, quindi expression2 e così via. Questo operatore viene utilizzato principalmente nelle istruzioni cicliche for, spesso assieme all’operatore parentesi ().

Operandi
expression1:* — Un’espressione da valutare.
expression2:* — Un’espressione da valutare.
expressionN:* — Un numero qualsiasi di espressioni aggiuntive da valutare.

Risultato
Object — I valori delle espressioni valutate.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore virgola (,) in un ciclo for:
for (i = 0, j = 0; i < 3 && j < 3; i++, j+=2) { 
	trace("i = " + i + ", j = " + j); 
} 
// output: 
// i = 0, j = 0 
// i = 1, j = 2
Nell’esempio seguente viene utilizzato l’operatore virgola senza l’operatore parentesi e mostra come l’operatore virgola abbia una priorità inferiore rispetto all’ operatore di assegnazione (=):
var v:Number = 0; 
v = 4, 5, 6; 
trace(v); // 4 
L’esempio seguente utilizza l’operatore virgola con l’operatore parentesi e mostra come l’operatore virgola restituisce il valore dell’ultima espressione:
var v:Number = 0; 
v = (4, 5, 6); 
trace(v); // 6 
L’esempio seguente utilizza l’operatore virgola senza l’operatore parentesi e mostra come l’operatore virgola determina la valutazione sequenziale di tutte le espressioni. La prima espressione, v + 4, viene assegnata alla variabile v perché l’operatore di assegnazione (=) ha una priorità maggiore dell’operatore virgola. La seconda espressione, z++, viene valutata e z viene incrementato di uno.
var v:Number = 0; 
var z:Number = 0; 
v = v + 4 , z++, v + 6; 
trace(v); // 4 
trace(z); // 1 
L’esempio seguente è identico al precedente tranne che per l’aggiunta delle parentesi, che cambia l’ordine delle operazioni in modo tale che l’operatore virgola venga valutato prima di quello di assegnazione (=):
var v:Number = 0; 
var z:Number = 0; 
v = (v + 4, z++, v + 6); 
trace(v); // 6 
trace(z); // 1 

Elementi API correlati

+ concatenation Operatore  
Uso

expression1 + expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Concatena (combina) più stringhe. Se un’espressione è una stringa, tutte le altre espressioni vengono convertite in stringhe e concatenate.

Se entrambe le espressioni sono numeri, questo operatore si comporta come un operatore di addizione.

Operandi
expression1:String — Una stringa da concatenare.
expression2:String — Una stringa da concatenare.

Risultato
String — La stringa concatenata.

Esempio
Come utilizzare questo esempio
L’esempio seguente concatena due stringhe.
var lastName:String = "Cola"; 
var instrument:String = "Drums"; 
trace(lastName + " plays " + instrument); // Cola plays Drums 
Questo esempio mostra che se una delle espressioni è una stringa, tutte le altre espressioni vengono convertite in stringhe e concatenate:
trace("Number " + 8 + 0); // Number 80
L’esempio seguente mostra come le somme numeriche a destra di un’espressione stringa non vengano calcolate perché vengono convertite in stringhe:
var a:String = 3 + 10 + "asdf"; 
trace(a); // 13asdf 
var b:String = "asdf" + 3 + 10; 
trace(b); // asdf310 

Elementi API correlati

+ concatenation (XMLList) Operatore  
Uso

expression1 + expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Concatena (combina) dei valori XML o XMLList in un oggetto XMLList. Viene restituito un oggetto XMLList solo se entrambi gli operandi sono valori XML o XMLList.

Operandi
expression1:* — Un oggetto XML o XMLList.
expression2:* — Un oggetto XML o XMLList.

Risultato
XMLList — L’oggetto XMLList concatenato.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato come utilizzare l’operatore XMLList (+) (concatenazione):
var x1:XML = 
		<employee id = "42">
			<firstName>Joe</firstName>
			<lastName>Smith</lastName>
		</employee>;

var x2:XML = 
		<employee id = "43">
			<firstName>Susan</firstName>
			<lastName>Jones</lastName>
		</employee>;

var myXMLList:XMLList = x1 + x2;
	
trace(myXMLList.toXMLString()); 

L’istruzione trace produce il seguente output:

<employee id = "42">
	<firstName>Joe</firstName>
	<lastName>Smith</lastName>
</employee>
<employee id = "43">
	<firstName>Susan</firstName>
	<lastName>Jones</lastName>
</employee>
	

Elementi API correlati

+= concatenation assignment Operatore  
Uso

expression1 += expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 + expression2. Ad esempio, le due istruzioni seguenti danno lo stesso risultato:

x += y; 
x = x + y;
Tutte le regole dell’operatore di concatenazione (+) si applicano anche all’operatore di assegnazione concatenazione (+=). Si noti che l’uso dell’assegnazione di concatenazione per la proprietà text di un TextField (ovvero someTextField.text += moreText è molto meno efficiente rispetto all’uso di TextField.appendText(), in particolare nel caso di un TextField che include una notevole quantità di contenuto.

Operandi
expression1:String — Una stringa.
expression2:String — Una stringa.

Risultato
Number — Il risultato della concatenazione.

Esempio
Come utilizzare questo esempio
In questo esempio viene utilizzato l’operatore += con un’espressione string:
var x1:String = "My name is "; 
x1 += "Gilbert"; 
trace(x1); // My name is Gilbert 

Elementi API correlati

+= concatenation assignment (XMLList) Operatore  
Uso

expression1 += expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna aexpression1, che è un oggetto XMLList, il valore di expression1 + expression2. Ad esempio, le due istruzioni seguenti danno lo stesso risultato:

x += y; 
x = x + y; 
Tutte le regole dell’operatore di concatenazione XMLList (+) si applicano anche all’operatore di assegnazione concatenazione XMLList (+=).

Operandi
expression1:XMLList — L’oggetto XMLList al quale viene aggiunto un nuovo valore.
expression2:* — Un oggetto XML o XMLList.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato come utilizzare l’operatore XMLList di assegnazione concatenazione (+=):
var x1:XML = <location>Athens</location>;	
var x2:XML = <location>Paris</location>;		
myXMLList = x1 + x2;

var x3:XML = <location>Springfield</location>;
myXMLList += x3;
		    
trace(myXMLList.toXMLString());

L’istruzione trace produce il seguente output:

<location>Athens</location>
	
<location>Paris</location>	

<location>Springfield</location>

Elementi API correlati

?: conditional Operatore  
Uso

expression1 ? expression2 : expression3

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Restituisce expression1 e se il valore di expression1 è true, il risultato è il valore di expression2; in caso contrario, il risultato è il valore di expression3.

Operandi
expression1:Boolean — Un’espressione che restituisce un valore Boolean; solitamente si tratta di un’espressione di confronto, come x < 5.
expression2:* — Un valore di qualsiasi tipo.
expression3:* — Un valore di qualsiasi tipo.

Risultato
* — Il valore di expression2 o expression3.

Esempio
Come utilizzare questo esempio
L’istruzione seguente assegna il valore della variabile x alla variabile z poiché la prima espressione restituisce true:
var x:Number = 5; 
var y:Number = 10; 
var z = (x < 6) ? x: y; 
trace(z); // returns 5
L’esempio seguente mostra un’istruzione condizionale in forma abbreviata:
var timecode:String = (new Date().getHours() < 11) ? "AM" : "PM"; 
trace(timecode); 
La stessa istruzione condizionale può essere scritta anche per esteso, come nell’esempio seguente:
if (new Date().getHours() < 11) { 
	var timecode:String = "AM"; 
} else { 
	var timecode:String = "PM"; 
}
trace(timecode); 

-- decrement Operatore  
Uso

--expression
expression--

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Sottrae 1 dall’operando. L’operando può essere una variabile, un elemento di un array o la proprietà di un oggetto. Il formato pre-decremento dell’operatore (--expression) sottrae 1 da expression e restituisce il risultato. Il formato post-decremento dell’operatore (expression--) sottrae 1 da expression e restituisce il valore iniziale di expression (il valore prima della sottrazione).

Operandi
expression:Number — Un numero o una variabile che restituisce un numero.

Risultato
Number — Il risultato del valore decrementato.

Esempio
Come utilizzare questo esempio
Il formato pre-decremento dell’operatore decrementa x a 2 (x - 1 = 2) e restituisce il risultato come y:
var x:Number = 3; 
var y:Number = --x; // y is equal to 2
Il formato post-decremento dell’operatore decrementa x a 2 (x - 1 = 2) e restituisce il valore originale di x come risultato y:
var x:Number = 3; 
var y:Number = x--; // y is equal to 3
Nell’esempio seguente viene ripetuto da 10 a 1 e ogni iterazione del ciclo decrementa la variabile counter i di 1:
for (var i = 10; i > 0; i--) { 
	trace(i); 
}

 delete Operatore  
Uso

 delete reference

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Elimina la proprietà dell’oggetto specificata da reference; il risultato è true se la proprietà non esiste dopo il completamento dell’operazione, altrimenti è false. L’operatore delete restituisce true se viene chiamato su una proprietà inesistente o su una proprietà dinamica non definita in una classe.

L’operatore delete può non riuscire e restituire false se il reference parametro non può essere eliminato. Non potete eliminare proprietà fisse oppure variabili dichiarate con l’istruzione var. Una proprietà fissa è una variabile o un metodo definito in una definizione di classe.

L’operatore delete non può essere utilizzato per eliminare una proprietà di una classe, a meno che non si tratti di una classe dinamica aggiunta in fase di runtime. Le proprietà delle classi chiuse non possono essere eliminate con delete. Impostate invece la proprietà su null.

Nota: non è possibile eliminare un oggetto, ma potete renderlo idoneo per il processo di garbage collection rimovendo tutti i relativi riferimenti. Il riferimento più comune a un oggetto è una variabile che punta ad esso. Un riferimento di questo tipo può essere rimosso impostando la variabile su null. Il processo di garbage collection rimuove gli oggetti privi di riferimenti.

Operandi
reference:* — Il nome della proprietà da eliminare.

Risultato
Boolean — Il valore truese l’eliminazione riesce, in caso contrario false.

Esempio
Come utilizzare questo esempio
L’esempio seguente elimina una proprietà di un oggetto:
// create the new object "account" 
var account:Object = new Object(); 
// assign property name to the account 
account.name = "Jon"; 
// delete the property 
delete account.name; 
trace(account.name); // undefined

// delete a nonexistent property
var fooDeleted:Boolean = delete account.foo;
trace(fooDeleted); // true

Nell’esempio seguente viene eliminato il valore di un elemento di array, ma il valore della proprietà length non viene modificato:

var my_array:Array = new Array(); 
my_array[0] = "abc"; // my_array.length == 1 
my_array[1] = "def"; // my_array.length == 2 
my_array[2] = "ghi"; // my_array.length == 3 
// my_array[2] is deleted, but Array.length is not changed 
delete my_array[2]; 
trace(my_array.length); // 3 
trace(my_array); // abc,def,

Nell’esempio seguente viene illustrato come il valore Boolean restituito da delete possa essere utilizzato come condizione per l’esecuzione successiva del codice. Notate che se un elemento è già stato eliminato, una nuova chiamata a delete per lo stesso elemento restituisce false.

var my_array:Array = [ "abc", "def", "ghi" ];
var deleteWasSuccessful:Boolean

deleteWasSuccessful = delete my_array[0];
if(deleteWasSuccessful) delete my_array[1];
deleteWasSuccessful = delete my_array[0];
if(deleteWasSuccessful) delete my_array[2];

trace(my_array) // outputs: undefined,undefined,ghi

Elementi API correlati

 delete (XML) Operatore  
Uso

 delete reference

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Elimina gli elementi o attributi XML specificati da reference.

Operandi
reference:XMLList — Un oggetto XMLList che specifica gli elementi o attributi XML da eliminare.

Risultato
Boolean — Restituisce sempre un valore true. Il risultato è sempre true perché l’operando XMLList si riferisce sempre a un oggetto XMLList valido (anche se eventualmente vuoto).

Esempio
Come utilizzare questo esempio
Il seguente esempio mostra come eliminare prima un attributo, poi un singolo elemento e infine più elementi:
 
var x1:XML = <x1>
				<a id = "52">AYY</a>
				<a>AYY 2 </a>
				<b>BEE</b>
				<c>CEE</c>
			</x1>;

trace(x1.toXMLString());
trace("___________");

delete x1.a.@id;

trace(x1.toXMLString());
trace("___________");

delete x1.b;

trace(x1.toXMLString());
trace("___________");

delete x1.a;

trace(x1.toXMLString());

L’output è il seguente:

<x1>
  <a id="52">AYY</a>
  <a>AYY 2</a>
  <b>BEE</b>
  <c>CEE</c>
</x1>
___________
<x1>
  <a>AYY</a>
  <a>AYY 2</a>
  <b>BEE</b>
  <c>CEE</c>
</x1>
___________
<x1>
  <a>AYY</a>
  <a>AYY 2</a>
  <c>CEE</c>
</x1>
___________
<x1>
  <c>CEE</c>
</x1>

Il seguente esempio mostra come eliminare l’intero contenuto di un elemento, compresi gli attributi e gli elementi secondari, senza eliminare l’elemento stesso:
 
var xml:XML = 
			<order>
				<item id="121">hamburger</item>
				<item id="122">fries</item>
				<item id="123">chocolate shake</item>
			</order>;
delete xml.item[1].*;
delete xml.item[1].@*;
trace(xml);

L’output di questo esempio è il seguente:

<order>
  <tem id="121">hamburger</item>
  <item/>
  <item id="123">chocolate shake</item>
</order>

.. descendant accessor Operatore  
Uso

 myXML..childElement1..@attributeName 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Va agli elementi discendenti di un oggetto XML o XMLList, oppure (se combinato con l’operatore @) trova gli attributi corrispondenti dei discendenti. Gli elementi o attributi corrispondenti non devono necessariamente essere elementi secondari diretti rispetto all’oggetto XML o XMLList; possono essere a un livello più basso della struttura (ad esempio, inferiori di due o più livelli). Il risultato è un oggetto XMLList, perché più di un elemento secondario o attributo può corrispondere.

L’ordine dei nodi dell’oggetto XMLList restituito è il risultato di una ricerca in profondità (depth-first traversal). Ad esempio, considerate il codice seguente:

var myXML:XML = <a>
			<b>one
				<c> 
					<b>two</b> 
				</c> 
			</b>
			<b>three</b>
		</a>;

trace(myXML..b[0].toXMLString());
trace("______________");
trace(myXML..b[1].toXMLString());
trace("______________");
trace(myXML..b[2].toXMLString());

Viene prodotto l’output seguente:

<b>
  one
  <c>
    <b>two</b>
  </c>
</b>
______________
<b>two</b>
______________
<b>three</b>

Per restituire discendenti con nomi che corrispondono a parole riservate di ActionScript, utilizzare il metodo XML.descendants() invece dell’operatore discendente (..). come nell’esempio seguente:

var xml:XML = 
<enrollees>
	<student id="239">
		<class name="Algebra" />
 		<class name="Spanish 2"/>
	</student>
	<student id="206">
		<class name="Trigonometry" />
 		<class name="Spanish 2" />
	</student>
 </enrollees>;
 trace(xml.descendants("class")); 
 

Operandi
myXML:Object — L’oggetto XML o XMLList.
childElement1_or_attributeName — Il nome di una proprietà XML o di un attributo.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra come utilizzare l’operatore accessor discendente (..) per restituire gli elementi discendenti di un oggetto XML e restituire un attributo di un elemento:
var myXML:XML = 
	<employees>
		<employee id = "42">
			<firstName>Billy</firstName>
			<lastName>Einstein</lastName>
		</employee>
		<employee id = "43">
			<firstName>Sally</firstName>
			<lastName>Shostakovich</lastName>
		</employee>
	</employees>
	
trace(myXML..firstName); 
	// <firstName>Billy</firstName>
	// <firstName>Sally</firstName>
				
trace(myXML..@id); //4243

Elementi API correlati

/ division Operatore  
Uso

expression1 / expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Divide expression1 per expression2. Il risultato della divisione corrisponde a un numero a virgola mobile e doppia precisione.

Operandi
expression:Number — Un numero o una variabile che restituisce un numero.

Risultato
Number — Il risultato a virgola mobile dell’operazione.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra che il risultato della divisione per 0 è diverso se il dividendo è positivo, negativo o 0.
trace(3/0);   // Infinity
trace(-3/0);  // -Infinity
trace(0/0);   // NaN

Elementi API correlati

/= division assignment Operatore  
Uso

expression1 /= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 / expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x /= y; 
x = x / y;

Operandi
expression1:Number — Un numero o una variabile che restituisce un numero.
expression2:Number — Un numero o una variabile che restituisce un numero.

Risultato
Number — Un numero.

Esempio
Come utilizzare questo esempio
Nel codice seguente viene illustrato l’uso dell’operatore di assegnazione divisione (/=) con variabili e numeri:
var a:Number = 10; 
var b:Number = 2; 
a /= b; trace(a); // 5 

Elementi API correlati

. dot Operatore  
Uso

object.property_or_method

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Accede a variabili di classe e metodi, ottiene e imposta proprietà di oggetto e delimita i pacchetti o le classi importate.

Operandi
object:Object — Un’istanza di una classe. L’oggetto può essere un’istanza di una qualsiasi delle classi incorporate in ActionScript o di una classe personalizzata. Questo operando si trova sempre a sinistra dell’operatore punto (.).
property_or_method:* — Il nome di una proprietà o di un metodo associati a un oggetto. Tutti i metodi e le proprietà validi per le classi incorporate sono elencati nelle tabelle di riepilogo di proprietà e metodi della relativa classe. Questo operando si trova sempre a destra dell’operatore punto (.).

Risultato
* — La variabile, il metodo o la proprietà menzionati a destra del punto.

Esempio
Come utilizzare questo esempio
L’esempio seguente utilizza l’operatore punto come delimitatore durante l’importazione della classe Timer.
import flash.utils.Timer;
L’esempio seguente crea un oggetto generico, quindi utilizza l’operatore punto per aggiungere una nuova proprietà.
var obj:Object = new Object();
obj.propertyA = "hello";
trace(obj.propertyA);  // hello

Elementi API correlati

. dot (XML) Operatore  
Uso

myXML.childElement
myXML.@attributeName 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Va agli elementi secondari di un oggetto XML o XMLList, oppure (se combinato con l’operatore @) restituisce gli attributi di un oggetto XML o XMLList. L’oggetto restituito è un oggetto XMLList, perché più di un elemento secondario o attributo può corrispondere.

Per restituire elementi con nomi che corrispondono a parole riservate di ActionScript, utilizzate il metodo XML.elements() o XML.descendants() invece dell’operatore XML punto (.), come nell’esempio seguente:

var xml:XML = 
	<student id="206">
		<class name="Trigonometry" />
		<class name="Spanish 2" />
	</student>;
trace(xml.elements("class"));
trace(xml.descendants("class")); 

Operandi
myXML:Object — L’oggetto XML o XMLList.
childElement:* — Il nome di una proprietà XML.
attributeName:* — Il nome di un attributo.

Risultato
XMLList — L’oggetto XMLList specificato.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra come utilizzare l’operatore punto (.) per restituire un elemento secondario di un oggetto XML e restituire un attributo di un elemento:
var myXML:XML = 
	<employee id = "42">
		<firstName>Billy</firstName>
		<lastName>Einstein</lastName>
	</employee>;

trace(myXML.firstName); // Billy
trace(myXML.@id);       // 42

Elementi API correlati

== equality Operatore  
Uso

expression1 == expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Confronta due espressioni per verificarne l’uguaglianza. Il risultato è true se le espressioni sono uguali.

Se i tipi di dati dei due operandi corrispondono, la definizione di uguale dipende dal tipo di dati:

  • i valori di tipo int, uint e Boolean sono considerati uguali se hanno lo stesso valore;
  • I numeri con valori corrispondenti vengono considerati uguali, a meno che non siano entrambi NaN.
  • Se il valore di entrambi gli operandi è null o undefined, vengono considerati uguali.
  • le espressioni String sono uguali se hanno lo stesso numero di caratteri e questi sono identici;
  • per gli oggetti XML:
    • Se un operando è un nodo di testo o di attributo e l’altro ha un contenuto semplice, entrambi vengono convertiti in stringhe con il metodo toString() e vengono considerati uguali se le stringhe risultanti corrispondono.
    • in caso contrario, gli oggetti vengono considerati uguali sono se il nome completo, gli attributi e le proprietà secondarie di entrambi corrispondono;
  • gli oggetti XMLList vengono considerati uguali se hanno lo stesso numero di proprietà e sia l’ordine che i valori delle proprietà corrispondono;
  • Per gli oggetti Namespace, i valori vengono considerati uguali se le proprietà uri di entrambi gli oggetti corrispondono.
  • Per gli oggetti QName, i valori vengono considerati uguali se le proprietà uri e localName di entrambi gli oggetti corrispondono.
  • le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
Se i tipi di dati degli operandi non corrispondono, il risultato è false tranne che nelle seguenti circostanze:
  • I valori degli operandi sono undefined e null, nel qual caso il risultato è true.
  • la conversione automatica del tipo di dati converte i tipi di dati dei valori String, Boolean, int, uint e Number in tipi compatibili e i valori convertiti sono uguali, nel qual caso gli operandi vengono considerati uguali;
  • Un solo operando è del tipo XML con contenuto semplice (hasSimpleContent() == true) e dopo la conversione in stringhe di entrambi gli operandi con il metodo toString() le stringhe risultanti corrispondono.
  • un operando è del tipo XMLList e una delle due seguenti condizioni è vera:
    • La proprietà length dell’oggetto XMLList è 0 e l’altro oggetto è undefined.
    • La proprietà length dell’oggetto XMLList è 1 e un elemento dell’oggetto XMLList corrisponde all’altro operando.

Operandi
expression1:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o un’espressione.
expression2:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o un’espressione.

Risultato
Boolean — Un valore true se le espressioni sono uguali, false in caso contrario.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore di uguaglianza (==) con un’istruzione if:
var a:String = "David"
var b:String = "David"; 
if (a == b) { 
	trace("David is David"); 
} 
Gli esempi seguenti mostrano come l’operatore di uguaglianza esegue la conversione automatica del tipo quando il confronto avviene in base al valore. I valori String vengono convertiti in numeri:
var a:Number = 5; 
var b:String = "5"; 
trace(a == b); // true
I valori Boolean vengono convertiti in numeri, ovvero truein 1 e false in 0:
var c:Number = 1; 
var d:Boolean = true; 
trace(c == d); // true
var e:Number = 0; 
var f:Boolean = false; 
trace(e == f); // true
Tuttavia, i valori stringa non vengono convertiti in valori Boolean, quindi l’esempio seguente restituisce false:
var g:String = "true";
var h:Boolean = true;
trace(g == h); // false
Gli esempi seguenti mostrano il confronto in base al riferimento. Il primo confronta due array con lunghezza ed elementi identici. L’operatore di uguaglianza restituisce false per i due array. Benché gli array appaiano uguali, il confronto in base al riferimento richiede che firstArray e secondArray facciano entrambi riferimento allo stesso array. Nel secondo esempio viene creata la variabile thirdArray, che punta allo stesso array della variabile firstArray. L’operatore uguaglianza restituisce true per questi due array, poiché le due variabili fanno riferimento allo stesso array.
var firstArray:Array = new Array("one", "two", "three"); 
var secondArray:Array = new Array("one", "two", "three"); 
trace(firstArray == secondArray); // false 
/* Arrays are only considered equal 
if the variables refer to the same array. */
var thirdArray:Array = firstArray; 
trace(firstArray == thirdArray); // true 

Elementi API correlati

> greater than Operatore  
Uso

expression1 > expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un confronto tra due espressioni e determina se expression1 è maggiore di expression2; in caso affermativo, l’operatore restituisce true. Se expression1 è minore di o uguale a expression2, l’operatore restituisce false.

Se entrambi gli operandi sono del tipo String, vengono confrontati in base all’ordine alfabetico; tutte le lettere maiuscole vengono prima delle minuscole. In caso contrario, gli operandi vengono prima convertiti in numeri, quindi confrontati.

Operandi
expression1:Object — Una stringa, un numero intero o un numero a virgola mobile.
expression2:Object — Una stringa, un numero intero o un numero a virgola mobile.

Risultato
Boolean — Un valore true seexpression1 è maggiore di expression2; false in caso contrario.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra che le stringhe vengono confrontate in ordine alfabetico, con le lettere maiuscole prima delle minuscole:
var a:String = "first";
var b:String = "First";
trace(a > b); // true
L’esempio seguente mostra come i valori String e Boolean vengono convertiti in numeri:
var c:Number = 5;
var d:String = "4";
trace(c > d); // true

var e: Number = 2;
var f:Boolean = true;
trace(e > f); // true

>= greater than or equal to Operatore  
Uso

expression1 >= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Confronta due espressioni e determina se expression1 è maggiore di o uguale a expression2 (true) o se expression1 è minore di expression2 (false).

Operandi
expression1:Object — Una stringa, un numero intero o un numero a virgola mobile.
expression2:Object — Una stringa, un numero intero o un numero a virgola mobile.

Risultato
Boolean — Un valore true se expression1 è maggiore di o uguale a expression2; false in caso contrario.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente, l’operatore maggiore o uguale a (>=) viene utilizzato per determinare se l’ora corrente è maggiore o uguale a 12:
if (new Date().getHours() >= 12) { 
	trace("good afternoon"); 
} else { 
	trace("good morning"); 
}

Elementi API correlati

 in Operatore  
Uso

expression1 in expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta se una proprietà appartiene a un oggetto specifico. Per utilizzare l’operatore in, specificate un nome di proprietà come primo operando e un oggetto come secondo operando. Se l’oggetto specificato contiene tale proprietà, il risultato è true; in caso contrario il risultato è false.

Se l’oggetto specificato è del tipo Array, potete utilizzare l’operatore in per verificare se un particolare numero di indice è valido. Se passate un indice come primo operando, il risultato è true se l’indice si trova in un intervallo valido di numeri di indice, in caso contrario è false.

Risultato
Boolean — Un valore true se expression1 è una proprietà dell’oggetto rappresentato da expression2, in caso contrario false.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore in per mostrare che PI è una proprietà dell’oggetto Math e che myProperty non lo è.
trace("PI" in Math);         // true
trace("myProperty" in Math); // false

Nell’esempio seguente viene utilizzato l’operatore in per mostrare che i numeri 0, 1 e sono numeri di indice validi nell’oggetto myArray, ma il numero 3 non lo è.

public var myArray:Array = ["zero", "one", "two"];
trace(0 in myArray); // true
trace(1 in myArray); // true
trace(2 in myArray); // true
trace(3 in myArray); // false

Elementi API correlati

++ increment Operatore  
Uso

++expression
 expression++

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Aggiunge 1 a un’espressione. L’espressione può essere una variabile, un elemento di un array o la proprietà di un oggetto. Il formato pre-incremento dell’operatore (++expression) aggiunge1 e expression e restituisce il risultato. Il formato post-incremento dell’operatore (expression++) aggiunge 1 a expression e restituisce il valore iniziale di expression (il valore prima dell’addizione).

Operandi
expression:Number — Un numero o una variabile che restituisce un numero.

Risultato
Number — Il risultato dell’incremento.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato ++ come operatore di pre-incremento in un ciclo while per mostrare che il valore aggiunto all’array è il valore che è stato incrementato:
var preInc:Array = new Array(); 
var i:int = 0; 
while (i < 10) { 
    preInc.push(++i); 
} 
trace(preInc); // 1,2,3,4,5,6,7,8,9,10 
Nell’esempio seguente viene utilizzato ++ come operatore di post-incremento in un ciclo while per mostrare che il valore aggiunto all’array è il valore iniziale:
 
var postInc:Array = new Array(); 
var i:int = 0; 
while (i < 10) { 
   postInc.push(i++); 
} 
trace(postInc); // 0,1,2,3,4,5,6,7,8,9 
Nell’esempio seguente viene utilizzato ++ come operatore di incremento dopo l’operazione per far eseguire cinque volte un ciclo while:
var i:int = 0; 
while (i++ < 5) { 
	trace("this is execution " + i); 
} 
/* output: 
   this is execution 1 
   this is execution 2 
   this is execution 3 
   this is execution 4 
   this is execution 5 
*/

!= inequality Operatore  
Uso

expression1 != expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Prova l’esatto opposto dell’ operatore di uguaglianza (==). Se expression1 è uguale a expression2, il risultato è false. Come nel caso dell’operatore di uguaglianza (==), la definizione di uguale dipende dai tipi di dati confrontati.

Se i tipi di dati dei due operandi corrispondono, la definizione di uguale dipende dal tipo di dati:

  • i valori di tipo int, uint e Boolean sono considerati uguali se hanno lo stesso valore;
  • I numeri con valori corrispondenti vengono considerati uguali, a meno che non siano entrambi NaN.
  • Se il valore di entrambi gli operandi è null o undefined, vengono considerati uguali.
  • le espressioni String sono uguali se hanno lo stesso numero di caratteri e questi sono identici;
  • per gli oggetti XML:
    • Se un operando è un nodo di testo o di attributo e l’altro ha un contenuto semplice, entrambi vengono convertiti in stringhe con il metodo toString() e vengono considerati uguali se le stringhe risultanti corrispondono.
    • in caso contrario, gli oggetti vengono considerati uguali sono se il nome completo, gli attributi e le proprietà secondarie di entrambi corrispondono;
  • gli oggetti XMLList vengono considerati uguali se hanno lo stesso numero di proprietà e sia l’ordine che i valori delle proprietà corrispondono;
  • Per gli oggetti Namespace, i valori vengono considerati uguali se le proprietà uri di entrambi gli oggetti corrispondono.
  • Per gli oggetti QName, i valori vengono considerati uguali se le proprietà uri e localName di entrambi gli oggetti corrispondono.
  • le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
Se i tipi di dati degli operandi non corrispondono, l’operatore di disuguaglianza (!=) restituisce true tranne che nelle seguenti circostanze:
  • I valori degli operandi sono undefined e null, nel qual caso il risultato è true.
  • la conversione automatica del tipo di dati converte i tipi di dati dei valori String, Boolean, int, uint e Number in tipi compatibili e i valori convertiti sono uguali, nel qual caso gli operandi vengono considerati uguali;
  • Un solo operando è del tipo XML con contenuto semplice (hasSimpleContent() == true) e dopo la conversione in stringhe di entrambi gli operandi con il metodo toString() le stringhe risultanti corrispondono.
  • un operando è del tipo XMLList e una delle due seguenti condizioni è vera:
    • La proprietà length dell’oggetto XMLList è 0 e l’altro oggetto è undefined.
    • La proprietà length dell’oggetto XMLList è 1 e un elemento dell’oggetto XMLList corrisponde all’altro operando.

Operandi
expression1:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.
expression2:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.

Risultato
Boolean — Un valore true se le espressioni non sono uguali, false in caso contrario.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato il risultato dell’ operatore disuguaglianza (!=):
trace(5 != 8); // true 
trace(5 != 5); // false 
Nell’esempio seguente viene illustrato l’utilizzo dell’operatore disuguaglianza (!=) in un’istruzione if:
var a:String = "David";
var b:String = "Fool";
if (a != b) { 
	trace("David is not a fool"); 
}
L’esempio seguente mostra il confronto in base al riferimento di due funzioni:
var a:Function = function() { trace("foo"); }; 
var b:Function = function() { trace("foo"); }; 
a(); // foo 
b(); // foo 
trace(a != b); // true 
a = b; 
a(); // foo 
b(); // foo 
trace(a != b); // false
L’esempio seguente mostra il confronto in base al riferimento di due array:
var a:Array = [ 1, 2, 3 ]; 
var b:Array = [ 1, 2, 3 ]; 
trace(a);      // 1,2,3 
trace(b);      // 1,2,3 
trace(a != b); // true 
a = b; 
trace(a);      // 1,2,3 
trace(b);      // 1,2,3 
trace(a != b); // false

Elementi API correlati

 instanceof Operatore  
Uso

expression instanceof function

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta se la catena di prototipi di un’espressione include l’oggetto prototipo di function. L’operatore instanceof è stato incluso per assicurare la compatibilità retroattiva con l’edizione 3 di ECMAScript e potrebbe essere utile ai programmatori avanzati che scelgono di utilizzare l’ereditarietà basata sui prototipi con le funzioni di costruzione anziché con le classi.

Per verificare se un oggetto è membro di un tipo di dati specifico, utilizzate l’ operatore is.

Quando viene utilizzato con le classi, l’operatore instanceof è simile all’operatore is perché la catena di prototipi di una classe include tutte le relative superclassi. Le interfacce, invece, non vengono incluse nelle catene di prototipi, quindi l’operatore instanceof restituisce sempre false quando viene utilizzato con le interfacce, mentre l’operatore is restituisce true se un oggetto appartiene a una classe che implementa l’interfaccia specificata.

Nota: l’operatore ActionScript is è l’equivalente dell’operatore Java instanceof.

Operandi
expression:Object — L’oggetto che contiene la catena di prototipi da valutare.
function:Object — Un oggetto funzione (o classe).

Risultato
Boolean — Restituisce true se la catena di prototipi di expression se la catena di prototipi di function, in caso contrario false.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene creata un’istanza della classe Sprite denominata mySprite e utilizza l’operatore instanceof per verificare se la catena di prototipi di mySpriteinclude gli oggetti prototipo delle classi Sprite e DisplayObject: Il risultato è true con le classi Sprite e DisplayObject perché gli oggetti prototipo di queste due classi sono nella catena di prototipi di mySprite.
var mySprite:Sprite = new Sprite();
trace(mySprite instanceof Sprite);        // true
trace(mySprite instanceof DisplayObject); // true
Nell’esempio seguente viene utilizzata l’interfaccia IBitmapDrawable per dimostrare che l’operatore instanceof non funziona con le interfacce. L’operatore is restituisce true perché la classe DisplayObject, che è una superclasse di Sprite, implementa l’interfaccia IBitmapDrawable.
var mySprite:Sprite = new Sprite();
trace(mySprite instanceof IBitmapDrawable); // false
trace(mySprite is IBitmapDrawable);         // true

Elementi API correlati

 is Operatore  
Uso

expression1 is expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta se un oggetto è compatibile con un tipo di dati, una classe o un’interfaccia specifica. Utilizzate l’operatore is invece dell’operatore instanceof per i confronti di tipo. Potete anche utilizzare l’operatore is per controllare se un oggetto implementa un’interfaccia.

Risultato
Boolean — Un valore true se expression1 è compatibile con il tipo di dati, la classe o l’interfaccia specificata in expression2, oppure false in caso contrario.

Esempio
Come utilizzare questo esempio
L’esempio seguente crea un’istanza della classe Sprite denominata mySprite e utilizza l’operatore is per verificare se mySprite è un’istanza delle classi Sprite e DisplayObject e se implementa l’interfaccia IEventDispatcher.
import flash.display.*;
import flash.events.IEventDispatcher;

var mySprite:Sprite = new Sprite();
trace(mySprite is Sprite);           // true
trace(mySprite is DisplayObject);    // true
trace(mySprite is IEventDispatcher); // true

Elementi API correlati

< less than Operatore  
Uso

expression1 < expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un confronto tra due espressioni e determina se expression1 è minore di expression2; in caso affermativo, l’operatore restituisce true. Se expression1 è maggiore di o uguale a expression2, l’operatore restituisce false.

Se entrambi gli operandi sono del tipo String, vengono confrontati in base all’ordine alfabetico; tutte le lettere maiuscole vengono prima delle minuscole. In caso contrario, gli operandi vengono prima convertiti in numeri, quindi confrontati.

Operandi
expression1:Object — Una stringa, un numero intero o un numero a virgola mobile.
expression2:Object — Una stringa, un numero intero o un numero a virgola mobile.

Risultato
Boolean — Un valore true if expression1 è minore di expression2; in caso contrario false.

Esempio
Come utilizzare questo esempio
Negli esempi seguenti vengono illustrati i risultati true e false sia per i confronti numerici che per quelli di stringa:
trace(5 < 10); // true 
trace(2 < 2);            // false 
trace(10 < 3);           // false 
trace("Allen" < "Jack"); // true 
trace("Jack" < "Allen"); // false 
trace("11" < "3");       // true 
trace("11" < 3);         // false (numeric comparison) 
trace("C" < "abc");      // true 
trace("A" < "a");        // true 

<= less than or equal to Operatore  
Uso

expression1 <= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un confronto tra due espressioni e determina se expression1 è minore o uguale a expression2; in caso affermativo, l’operatore restituisce true. Se expression1 è maggiore di expression2, il risultato è false.

Se entrambi gli operandi sono del tipo String, vengono confrontati in base all’ordine alfabetico; tutte le lettere maiuscole vengono prima delle minuscole. In caso contrario, gli operandi vengono prima convertiti in numeri, quindi confrontati.

Operandi
expression1:Object — Una stringa, un numero intero o un numero a virgola mobile.
expression2:Object — Una stringa, un numero intero o un numero a virgola mobile.

Risultato
Boolean — Un valore true se expression1 è minore di o uguale a expression2; in caso contrario false.

Esempio
Come utilizzare questo esempio
Negli esempi seguenti vengono illustrati i risultati true e false sia per i confronti numerici che per quelli di stringa:
trace(5 <= 10); // true 
trace(2 <= 2);            // true 
trace(10 <= 3);           // false 
trace("Allen" <= "Jack"); // true 
trace("Jack" <= "Allen"); // false 
trace("11" <= "3");       // true 
trace("11" <= 3);         // false (numeric comparison) 
trace("C" <= "abc");      // true 
trace("A" <= "a");        // true 

// line comment delimiter Operatore  
Uso

// Commento

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Indica l’inizio di un commento di script. I caratteri racchiusi tra il delimitatore (//) e il carattere di fine riga vengono considerati commenti e ignorati. Utilizzate questo delimitatore per i commenti a riga singola; per i commenti su più righe successive, utilizzate i delimitatori /* e */.

Operandi
comment:* — Qualsiasi carattere.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra un commento a riga singola:
// Any text following a line comment delimiter is ignored during compilation

Elementi API correlati

&& logical AND Operatore  
Uso

expression1 && expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Restituisce expression1 se è false o può essere convertita in false, in caso contrario restituisce expression2. Esempi di valori che possono essere convertiti in false sono 0, NaN, null e undefined. Se usate una chiamata a una funzione come expression2, la funzione non viene chiamata se expression1 restituisce false.

Se entrambi gli operandi sono di tipo Boolean, il risultato è true solo se sono entrambi true, come illustrato nella seguente tabella:

Espressione

Risultato

true&&true

true

true&&false

false

false&&false

false

false&&true

false

Operandi
expression1:* — Un valore o un’espressione di qualsiasi tipo.
expression2:* — Un valore o un’espressione di qualsiasi tipo.

Risultato
* — Un valore Boolean se entrambi gli operandi sono del tipo Boolean. Altrimenti, il risultato è il valore di una delle espressioni.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore AND logico (&&) per eseguire una prova che determini se un giocatore ha vinto il gioco. La variabile turns e la variabile score vengono aggiornate quando un giocatore comincia il proprio turno o realizza dei punti durante il gioco. Lo script produce la scritta "You Win the Game!" quando il punteggio del giocatore raggiunge 75 o più punti in tre o meno turni.
var turns:Number = 2; 
var score:Number = 77; 
if ((turns <= 3) && (score >= 75)) { 
	trace("You Win the Game!"); 
} else { 
	trace("Try Again!"); 
} 

Elementi API correlati

&&= logical AND assignment Operatore  
Uso

expression1 &&= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 && expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x &&= y; 
x = x && y; 

Operandi
expression1:* — Un valore di qualsiasi tipo.
expression2:* — Un valore di qualsiasi tipo.

Risultato
* — Un valore Boolean se entrambi gli operandi sono membri del tipo di dati Boolean. Altrimenti, il risultato è il valore di una delle due espressioni.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente la variabile myVar viene cambiata in un tag XML, a meno che myVar non sia null. Nell’esempio seguente viene modificata la variabile myVar se la variabile non restituisce false. Questa tecnica sfrutta il fatto che l’operatore logico AND (&&) restituisce il valore di expression1 se expression1 restituisce false, in caso contrario restituisce il valore di expression2. Se myVar contiene già un valore che restituisce true, myVar viene modificato in modo che assomigli a un tag XML. Tuttavia, se myVar contiene un valore che restituisce false, ad esempio i valori null, "" (stringa vuota) e undefined, myVar rimane invariato.
var myVar:String = 'tag';
			myVar &&= "<" + myVar + "/>";
			trace (myVar); // output: <tag/>
Lo stesso effetto può essere ottenuto con un’istruzione if, come illustrato nell’esempio seguente:
var myVar:String = 'tag';
			if (myVar != '') {
			  myVar = "<" + myVar + "/>";
			}
			trace (myVar); // output: <tag/>
Il vantaggio di utilizzare un’istruzione if è costituito dal fatto che il codice è più facile da leggere, mentre il vantaggio di utilizzare l’operatore di assegnazione AND logico (&&=) è costituito dal fatto che non dovete specificare il valore predefinito esatto di un particolare tipo di dati.

Elementi API correlati

! logical NOT Operatore  
Uso

!expression

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Inverte il valore booleano di una variabile o espressione. Se expression è una variabile con un valore convertito o assoluto true, il valore di !expression è false. Se l’espressione x && y restituisce false, l’espressione !(x && y) restituisce true.

Le espressioni seguenti mostrano il risultato dell’uso dell’operatore NOT (!) logico:

  • !true restituisce false.
  • !false restituisce true.

Operandi
expression:Boolean — Un’espressione o una variabile che restituisce un valore Boolean.

Risultato
Boolean — Il risultato Boolean dell’operazione logica.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente, la variabile happy è impostata su false. La condizione if restituisce la condizione!happy e se la condizione è true, l’istruzione trace() genera una stringa.
var happy:Boolean = false; 
if (!happy) { 
	trace("don't worry, be happy"); // don't worry, be happy 
} 
L’istruzione trace viene eseguita perché !false è uguale a true.

Elementi API correlati

|| logical OR Operatore  
Uso

expression1 || expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Restituisce expression1 se è true o può essere convertita in true, in caso contrario restituisce expression2. Se usate una chiamata a una funzione come expression2, la funzione non viene chiamata se expression1 restituisce true.

Se entrambi gli operandi sono di tipo Boolean, il risultato è true se una o entrambe le espressioni sono true; il risultato è invece false solo nel caso in cui entrambe le espressioni siano false, come mostra la tabella seguente:

Espressione

Risultato

true || true

true

true || false

true

false || false

false

false || true

true

Operandi
expression1:* — Un valore di qualsiasi tipo.
expression2:* — Un valore di qualsiasi tipo.

Risultato
* — Un valore Boolean se entrambi gli operandi sono membri del tipo di dati Boolean. Altrimenti, il risultato è il valore di una delle due espressioni.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore OR logico (||) in un’istruzione if. La seconda espressione restituisce true, quindi il risultato finale è true:
var a:Number = 10; 
var b:Number = 250; 
var start:Boolean = false; 
if ((a > 25) || (b > 200) || (start)) { 
    trace("the logical OR test passed"); // the logical OR test passed 
} 
Il messaggio "the logical OR test passed" viene visualizzato poiché una delle condizioni dell’istruzione if è true (b > 200).

L’esempio seguente mostra come l’uso di una chiamata di funzione come secondo operando può portare a risultati imprevisti. Se l’espressione a sinistra dell’operatore restituisce true, tale risultato viene restituito senza che venga valutata l’espressione a destra (la funzione fx2() non viene chiamata).

function fx1():Boolean { 
	trace("fx1 called"); 
	return true; 
} 
function fx2():Boolean { 
	trace("fx2 called"); 
	return true; 
} 
if (fx1() || fx2()) { 
	trace("IF statement entered");
}

Elementi API correlati

||= logical OR assignment Operatore  
Uso

expression1 ||= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 || expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x ||= y; 
x = x || y; 

Operandi
expression1:* — Un valore di qualsiasi tipo.
expression2:* — Un valore di qualsiasi tipo.

Risultato
* — Un valore Boolean se entrambi gli operandi sono membri del tipo di dati Boolean. Altrimenti, il risultato è il valore di una delle due espressioni.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene assegnato un valore predefinito a una variabile definita in precedenza denominata myVar. Questa tecnica sfrutta il fatto che l’operatore logico OR (||) restituisce il valore di expression1 se expression1 restituisce true, in caso contrario restituisce il valore di expression2. Se myVar contiene già un valore che restituisce true, myVar rimane invariato. Tuttavia, se myVar restituisce false, ad esempio i valori null, ""(stringa vuota) e undefined, a myVar viene assegnato il valore "default".
myVar ||= "default";

Elementi API correlati

% modulo Operatore  
Uso

expression1 % expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Calcola il resto di expression1 diviso per expression2. Se uno degli operandi non è un valore numerico, l’operatore modulo (%) tenta di convertirlo in un numero.

Il segno del risultato del modulo corrisponde al segno del dividendo (ovvero il primo numero). Ad esempio, -4 % 3 e -4 % -3 restituiscono entrambi -1.

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero. Una stringa che contiene solo caratteri numerici restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero. Una stringa che contiene solo caratteri numerici restituisce un numero.

Risultato
Number — Il risultato dell’operazione aritmetica.

Esempio
Come utilizzare questo esempio
Nell’esempio numerico seguente viene utilizzato l’operatore modulo (%):
trace(12 % 5);    // 2 
trace(4.3 % 2.1); // 0.0999999999999996 
trace(4 % 4);     // 0 
La prima istruzione trace restituisce 2 anziché 12/5 o 2.4, poiché l’operatore modulo (%) restituisce solo il resto. La seconda istruzione trace restituisce 0.0999999999999996 anziché il valore 0.1 previsto a causa delle limitazioni della precisione della virgola mobile nell’elaborazione binaria.

Elementi API correlati

%= modulo assignment Operatore  
Uso

expression1 %= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 % expression2. Le due istruzioni seguenti sono equivalenti:

x %= y; 
x = x % y; 

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
Number — Il risultato dell’operazione aritmetica.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene assegnato il valore 4 alla variabile a:
var a:Number = 14; 
var b:Number = 5; 
a %= b;
trace(a); // 4 

Elementi API correlati

* multiplication Operatore  
Uso

expression1 * expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Moltiplica due espressioni numeriche. Se entrambe le espressioni sono numeri interi, il prodotto è un numero intero. Se almeno una delle due espressioni è un numero a virgola mobile, il prodotto è un numero a virgola mobile.

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
Number — Un numero intero o un numero a virgola mobile.

Esempio
Come utilizzare questo esempio
L’istruzione seguente moltiplica gli interi 2 e 3 e produce come risultato il numero intero 6:
trace(2*3); // 6 
questa istruzione moltiplica i numeri a virgola mobile 2.0 e 3.1416; il risultato è il numero a virgola mobile 6.2832.
trace(2.0 * 3.1416); // 6.2832 

*= multiplication assignment Operatore  
Uso

expression1 *= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 * expression2. Ad esempio, le due espressioni seguenti sono equivalenti:

x *= y 
x = x * y 

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
Number — Il valore di expression1 * expression2. Se un’espressione non può essere convertita in un valore numerico, restituisce NaN (not a number, non un numero).

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene assegnato il valore 50 alla variabile a:
var a:Number = 5; 
var b:Number = 10; 
trace(a *= b); // 50 
La seconda e terza riga dell’esempio seguente calcolano le espressioni a destra del segno di uguale e assegnano i risultati a c e d:
var i:Number = 5; 
var c:Number = 4 - 6; 
var d:Number = i + 2; 
trace(c *= d); // -14 

Elementi API correlati

:: name qualifier Operatore  
Uso

namespace::property
namespace::method()
namespace::xmlObject.property
namespace::xmlObject.@attribute

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Identifica lo spazio dei nomi di una proprietà, un metodo, una proprietà XML o un attributo XML.

Operandi
namespace:Object — Lo spazio dei nomi di identificazione.
propertyName:Object — La proprietà, il metodo, la proprietà XML o l’attributo XML da identificare.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore :: per identificare due metodi che hanno lo stesso nome in due spazi dei nomi diversi:
public class NamespaceExample extends Sprite {
	public namespace French;
	public namespace Hawaiian;
	public function NamespaceExample() {
		trace(Hawaiian::hello()); // aloha
		trace(French::hello()); // bonjour
	}
    Hawaiian function hello():String {
        return "aloha";
    }

    French function hello():String { 
        return "bonjour";
    }
}
Nell’esempio seguente viene utilizzato l’operatore :: per identificare le proprietà XML con spazi dei nomi specificati:
var soap:Namespace = new Namespace("http://schemas.xmlsoap.org/wsdl/soap/");
var w:Namespace = new Namespace("http://weather.example.org/forecast");
var myXML:XML = 
	<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"> 
	 <soap:Body>
	  <w:forecast xmlns:w="http://weather.example.org/forecast">
	   <w:city>Quito</w:city>
	   <w:country>Ecuador</w:country>
	   <date>2006-01-14</date>
	  </w:forecast>
	  </soap:Body>
	</soap:Envelope>;
	
trace(myXML.soap::Body.w::forecast.w::city); // Quito

Elementi API correlati

 new Operatore  
Uso

nuova funzione di costruzione(parametri)

Versioni runtime: Flash Player 5

Crea una nuova istanza di classe. L’operatore new può essere utilizzato con una classe o una variabile di tipo Class per creare un’istanza di una classe. L’operatore new viene solitamente utilizzato con un oggetto classe per creare un’istanza di una classe. Ad esempio, l’istruzione new Sprite() crea un’istanza della classe Sprite.

L’operatore new può anche essere utilizzato per associare una classe a una risorsa incorporata, vale a dire un oggetto esterno (ad esempio un’immagine, un suono o un carattere) che viene compilato in un file SWF. Ogni risorsa incorporata è rappresentata da una classe di risorsa incorporata univoca. Per accedere a una risorsa incorporata, dovete utilizzare l’operatore new per creare un’istanza della classe ad essa associata. Successivamente, potete chiamare i metodi e le proprietà appropriate della classe della risorsa incorporata per modificare la risorsa.

Se preferite definire le classi con oggetti Function anziché con la parola chiave class, potete utilizzare l’operatore new per creare oggetti basati su funzioni di costruzione. Non confondete le funzioni di costruzione con i metodi di costruzione di una classe. Una funzione di costruzione è un oggetto Function definito mediante la parola chiave function ma che non fa parte di una definizione di classe. Se create oggetti mediante le funzioni di costruzione, dovete utilizzare l’ereditarietà di prototipo anziché quella di classe.

Operandi
constructor:* — Classe, funzione o variabile che contiene un valore del tipo Class.
parameters:* — Uno o più parametri, separati da virgole.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene creata la classe Book, quindi viene utilizzato l’operatore new per creare gli oggetti book1 e book2.
class Book {
  var bName:String;
  var bPrice:Number;
  
  public function Book(nameParam:String, priceParam:Number){
    bName = nameParam;
    bPrice = priceParam;
  }
}

var book1:Book = new Book("Confederacy of Dunces", 19.95);
var book2:Book = new Book("The Floating Opera", 10.95);
trace(book1); // [object Book]
Nell’esempio seguente viene utilizzato l’operatore new per creare un’istanza della classe Array con 18 elementi:
var golfCourse:Array = new Array(18);

Elementi API correlati

{} object initializer Operatore  
Uso

object = {name1 : value1, name2 : value2,... nameN : valueN}

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Crea un nuovo oggetto e lo inizializza con le coppie di proprietà name e value specificate. L’uso di questo operatore equivale a utilizzare la sintassi di new Object e indicare le coppie di proprietà mediante l’operatore di assegnazione. Il prototipo dell’oggetto appena creato viene solitamente chiamato oggetto Object.

Questo operatore viene anche utilizzato per contrassegnare i blocchi di codice contigui associati alle istruzioni (for, while, if, else, switch) e funzioni di controllo del flusso.

Operandi
object:Object — L’oggetto da creare.
name1,2,...N:Object — I nomi delle proprietà.
value1,2,...N:Object — I valori corrispondenti per ciascuna proprietà name.

Risultato
Object — un oggetto Object.

Esempio
Come utilizzare questo esempio
La prima riga del codice seguente crea un oggetto vuoto mediante l’operatore inizializzatore di oggetto ({}); la seconda riga crea un nuovo oggetto mediante una funzione di costruzione:
var object:Object = {}; 
var object:Object = new Object(); 
Nell’esempio seguente viene creato un oggetto account e vengono inizializzate le proprietà name, address, city, state, zip e balance con i relativi valori:
var account:Object = {name:"Adobe Systems, Inc.", address:"601 Townsend Street", city:"San Francisco", state:"California", zip:"94103", balance:"1000"}; 
for (i in account) { 
	trace("account."+i+" = "+account[i]); 
} 
L’esempio seguente mostra il modo in cui gli inizializzatori di array e di oggetto possono essere nidificati l’uno dentro l’altro:
var person:Object = {name:"Gina Vechio", children:["Ruby", "Chickie", "Puppa"]}; 
Il codice seguente utilizza le informazioni dell’esempio precedente e produce lo stesso risultato mediante una funzione di costruzione:
var person:Object = new Object(); 
person.name = "Gina Vechio"; 
person.children = new Array(); 
person.children[0] = "Ruby"; 
person.children[1] = "Chickie"; 
person.children[2] = "Puppa"; 

Elementi API correlati

() parentheses Operatore  
Uso

(expression1[, expression2])
(expression1, expression2)
function(parameter1,..., parameterN) 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Esegue un’operazione di raggruppamento su uno o più parametri, esegue una valutazione sequenziale delle espressioni, oppure racchiude uno o più parametri e li passa come argomenti a una funzione che precede le parentesi.

Uso 1: controlla l’ordine di esecuzione degli operatori. Le parentesi hanno la priorità sul normale ordine di precedenza e le espressioni racchiuse tra parentesi vengono valutate per prime. Quando le parentesi sono nidificate, il contenuto delle parentesi interne viene valutato prima del contenuto di quelle esterne.

Uso 2: valuta una serie di espressioni, separate da virgola, in sequenza, e restituisce il risultato dell’espressione finale.

Uso 3: racchiude uno o più parametri e li passa alla funzione che precede le parentesi.

Operandi
expression1:Object — Un’espressione che può includere numeri, stringhe, variabili o testo.
expression2:Object — Un’espressione che può includere numeri, stringhe, variabili o testo.
function:Function — La funzione da eseguire sul contenuto delle parentesi.
parameter1...parameterN:Object — Una serie di parametri da eseguire prima che i risultati vengano passati come argomenti alla funzione che si trova fuori dalle parentesi.

Esempio
Come utilizzare questo esempio
Uso 1: le istruzioni seguenti mostrano l’uso delle parentesi per controllare l’ordine con cui vengono eseguite le espressioni:
trace((2 + 3) * (4 + 5)); // 45 
trace(2 + (3 * (4 + 5))); // 29
trace(2 + (3 * 4) + 5);   // 19
trace(2 + (3 * 4) + 5);   // 19
Uso 2: nell’esempio seguente viene valutata la funzione foo() quindi la funzione bar() e viene restituito il risultato dell’espressione a + b:
var a:Number = 1; 
var b:Number = 2; 
function foo() { 
  a += b; 
} 
function bar() { 
  b *= 10; 
} 
trace((foo(), bar(), a + b)); // 23 
Uso 3: l’esempio seguente mostra l’uso delle parentesi con le funzioni:
var today:Date = new Date(); 
trace(today.getFullYear()); // outputs current year 
function traceParameter(param):void { 
  trace(param); 
} 
traceParameter(2 * 2); // 4 

Elementi API correlati

( ) parentheses (XML) Operatore  
Uso

myXML.(expression)

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta un’espressione utilizzata in un costrutto XML ECMAScript per XML (E4X). Ad esempio, myXML.(lastName == "Smith") identifica gli elementi XML con il nome lastName e il valore "Smith". Il risultato è un oggetto XMLList.

Operandi
myXML:* — Un oggetto XML o XMLList.
expression:* — L’espressione che definisce gli elementi corrispondenti.

Risultato
XMLList — L’oggetto XMLList specificato dalle parentesi.

Esempio
Come utilizzare questo esempio
L’esempio seguente mostra come utilizzare le parentesi per identificare gli elementi e gli attributi:
var myXML:XML = 
	<employees>
		<employee id = "42">
			<firstName>Joe</firstName>
			<lastName>Smith</lastName>
		</employee>
		<employee id = "43">
			<firstName>Susan</firstName>
			<lastName>Jones</lastName>
		</employee>
		<employee id = "44">
			<firstName>Anne</firstName>
			<lastName>Smith</lastName>
		</employee>
	</employees>;
	
trace(myXML.employee.(lastName == "Smith").@id.toXMLString()); 
	// 42
	// 44
                
trace(myXML.employee.(Number(@id) > 42).@id.toXMLString()); 
	// 43
	// 44

Elementi API correlati

/ RegExp delimiter Operatore  
Uso

/pattern/flags

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Se viene utilizzato prima e dopo dei caratteri, indica che i caratteri hanno un valore letterale e devono essere considerati come espressione regolare (RegExp) e non come variabile, stringa, valore numerico o un altro elemento ActionScript. Tenete presente, tuttavia, che due caratteri di barra in sequenza (//) indicano l’inizio di un commento.

Operandi
pattern:String — Una sequenza di uno o più caratteri che definiscono lo schema dell’espressione regolare.
flags:String — Una sequenza di zero o più dei seguenti caratteri: g (per il flag global), i (per il flag ignoreCase), s (per il flag dotall), x (per il flag extended).

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato il carattere di barra (/) per impostare il valore di una variabile di tipo RegExp (con il flag i impostato, per ignorare le differenze tra minuscole e maiuscole nella corrispondenza):
var myRegExp:RegExp = /foo-\d+/i; 
trace(myRegExp.exec("ABC Foo-32 def.")); // Foo-32 

Elementi API correlati

=== strict equality Operatore  
Uso

expression1 === expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Verifica l’uguaglianza di due espressioni, ma non esegue la conversione automatica dei dati. Il risultato è true se le due espressioni sono uguali, inclusi i tipi di dati.

L’operatore di uguaglianza rigorosa (===) è uguale a quello di uguaglianza (==) in tre aspetti:

  • i numeri e i valori Boolean vengono confrontati in base al valore e sono considerati uguali se hanno lo stesso valore;
  • le espressioni String sono uguali se hanno lo stesso numero di caratteri e questi sono identici;
  • le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
L’operatore di uguaglianza rigorosa (===) si differenzia da quello di uguaglianza (==) per due soli aspetti:
  • L’operatore di uguaglianza rigorosa esegue la conversione automatica dei dati solo per i tipi numerici (Number, int e uint), mentre l’operatore di uguaglianza converte automaticamente tutti i tipi di dati di base.
  • Quando si confrontano null e undefined, l’operatore di uguaglianza rigorosa restituisce false.
L’operatore di uguaglianza rigorosa produce risultati diversi in ActionScript 3.0 rispetto ad ActionScript 2 in due situazioni che riguardano valori di base (ad esempio, var x:Number = 1) con oggetti di base (ad esempio, var x:Number = new Number(1)). Ciò si verifica perché ActionScript 3.0 non distingue tra valori di base e oggetti wrapper di base.

Innanzi tutto, i confronti tra valori di base e oggetti di base che contengono lo stesso valore restituiscono true in ActionScript 3.0, ma false nelle versioni precedenti. In queste ultime, il tipo di dati di un valore di base è Boolean, Number o String, mentre il tipo di dati di un oggetto di base è sempre Object e mai Boolean, Number o String. Come conseguenza pratica di questa differenza, il codice seguente restituisce false nelle versioni precedenti di ActionScript perché i tipi di dati degli operandi non corrispondono, ma il risultato è true in ActionScript 3.0 perché i valori di base sono del tipo Boolean, Number, int, uint o String, a prescindere che siano contenuti in un oggetto wrapper o meno.

var num1:Number = 1;
var num2:Number = new Number(1);
trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
			
In secondo luogo, i confronti tra due oggetti di base che contengono lo stesso valore restituiscono true in ActionScript 3.0, ma false nelle versioni precedenti.
var num1:Number = new Number(1);
var num2:Number = new Number(1);
trace(num1 == num2);  // true in ActionScript 3.0, false in ActionScript 2.0
trace(num1 === num2); // true in ActionScript 3.0, false in ActionScript 2.0
Ciò si verifica perché nelle versioni precedenti di ActionScript, entrambe le variabili appartengono al tipo di dati Object, quindi vengono confrontate in base al riferimento e il risultato è false sia per l’operazione di uguaglianza che per quella di uguaglianza rigorosa. In ActionScript 3.0, tuttavia, entrambe le variabili appartengono al tipo di dati Number, quindi vengono confrontate in base al valore e il risultato è true sia per l’operatore di uguaglianza che per quello di uguaglianza rigorosa.

Operandi
expression1:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.
expression2:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.

Risultato
Boolean — Il risultato Boolean del confronto.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato che l’operatore di uguaglianza rigorosa (===) si comporta come quello di uguaglianza (==) quando sia il valore che il tipo di dati corrispondono:
var string1:String = "5"; 
var string2:String = "5"; 
trace(string1 == string2);  // true 
trace(string1 === string2); // true
Nell’esempio seguente viene illustrato che l’operatore di uguaglianza rigorosa non converte il tipo di dati String in Number, a differenza dell’operatore di uguaglianza (==):
// The equality (==) operator converts 5 to "5", but the strict equality operator does not
var string1:String = "5"; 
var num:Number = 5; 
trace(string1 == num);  // true 
trace(string1 === num); // false 
L’esempio seguente mostra che l’operatore di uguaglianza rigorosa non converte il tipo di dati Boolean in Number, a differenza dell’operatore di uguaglianza:
var num:Number = 1;
var bool:Boolean = true;
trace(num == bool);  // true 
trace(num === bool); // false
L’esempio seguente mostra che l’operatore di uguaglianza rigorosa converte i tipi di dati int e uint:
var num1:Number = 1;
var num2:int = 1;
var num3:uint = 1;
trace(num1 === num2); // true
trace(num1 === num3); // true
Nell’esempio seguente viene illustrato che l’operatore di uguaglianza rigorosa considera null e undefined come non uguali, mentre l’operatore di uguaglianza li considera uguali:
trace(null == undefined);  // true 
trace(null === undefined); // false 

Elementi API correlati

!== strict inequality Operatore  
Uso

expression1 !== expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Prova l’esatto opposto dell’ operatore di uguaglianza rigorosa (===). L’operatore di disuguaglianza rigorosa si comporta come l’operatore di disuguaglianza ma converte solo i tipi di dati int e uint.

Se expression1 è uguale a expression2 e i relativi tipi di dati sono uguali, il risultato è false.

L’operatore di disuguaglianza rigorosa (!==) è uguale a quello di disuguaglianza (!=) in tre aspetti:

  • i numeri e i valori Boolean vengono confrontati in base al valore e sono considerati uguali se hanno lo stesso valore;
  • le espressioni String sono uguali se hanno lo stesso numero di caratteri e questi sono identici;
  • le variabili che rappresentano oggetti, array e funzioni vengono confrontate in base ai riferimenti. Due espressioni di questo tipo sono uguali se entrambe si riferiscono allo stesso oggetto, array o funzione. Due array separati non vengono mai considerati uguali, anche se contengono lo stesso numero di elementi.
L’operatore di disuguaglianza rigorosa si differenzia da quello di disuguaglianza (!=) per due soli aspetti:
  • L’operatore di disuguaglianza rigorosa (!==) esegue la conversione automatica dei dati solo per i tipi numerici (Number, int e uint), mentre l’operatore di disuguaglianza (!=) converte automaticamente tutti i tipi di dati di base.
  • Quando si confrontano null e undefined, l’operatore di disuguaglianza rigorosa (!==) restituisce true.

Operandi
expression1:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.
expression2:Object — Un numero, una stringa, un valore Boolean, una variabile, un oggetto, un array o una funzione.

Risultato
Boolean — Il risultato Boolean del confronto.

Esempio
Come utilizzare questo esempio
I commenti nel codice seguente mostrano il valore restituito dalle operazioni che utilizzano gli operatori uguaglianza (==), uguaglianza rigorosa (===) e disuguaglianza rigorosa (!==):
var s1:String = "5"; 
var s2:String = "5"; 
var s3:String = "Hello"; 
var n:Number = 5; 
var b:Boolean = true; 
trace(s1 == s2);  // true 
trace(s1 == s3);  // false 
trace(s1 == n);   // true 
trace(s1 == b);   // false 
trace(s1 === s2); // true 
trace(s1 === s3); // false 
trace(s1 === n);  // false 
trace(s1 === b);  // false 
trace(s1 !== s2); // false 
trace(s1 !== s3); // true 
trace(s1 !== n);  // true 
trace(s1 !== b);  // true 

Elementi API correlati

" string delimiter Operatore  
Uso

 "text" 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Se utilizzate prima e dopo i caratteri, indicano che i caratteri hanno un valore letterale e devono essere considerati come una stringa, non una variabile, un valore numerico o un altro elemento ActionScript.

Operandi
text:String — Una sequenza di zero o più caratteri.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente vengono utilizzate le virgolette (") per indicare che il valore della variabile yourGuess è il valore letterale di stringa "Prince Edward Island" e non il nome di una variabile.
var yourGuess:String = "Prince Edward Island"; 
submit_btn.onRelease = function() { trace(yourGuess); }; 
// Prince Edward Island

Elementi API correlati

- subtraction Operatore  
Uso

-expression
 expression1 - expression2

Versioni runtime: Flash Player 9

Utilizzato per negare o sottrarre.

Uso 1: quando viene utilizzato per la negazione, l’operatore inverte il segno di un’espressione numerica.

Uso 2: quando viene utilizzato per la sottrazione, l’operatore esegue una sottrazione aritmetica su due espressioni numeriche, sottraendo expression2 da expression1. Se entrambe le espressioni sono numeri interi, la differenza è un numero intero. Se almeno una delle due espressioni è un numero a virgola mobile, la differenza è un numero a virgola mobile.

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
Number — Un numero intero o un numero a virgola mobile.

Esempio
Come utilizzare questo esempio
Uso 1: l’istruzione seguente inverte il segno dell’espressione 2 + 3:
trace(-(2 + 3)); // -5 
Uso 2: l’istruzione seguente sottrae il numero intero 2 dal numero intero 5:
trace(5 - 2); // 3 
Il risultato è un numero intero: 3.

L’istruzione seguente sottrae il numero a virgola mobile 1.5 dal numero a virgola mobile 3.25:

trace(3.25 - 1.5); // 1.75 
Il risultato è un numero a virgola mobile: 1.75.

-= subtraction assignment Operatore  
Uso

expression1 -= expression2

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Assegna a expression1 il valore di expression1 - expression2. Le seguenti due istruzioni, ad esempio, sono equivalenti:

x -= y ;
x = x - y;

Le espressioni String devono essere convertite in numeri; in caso contrario, il risultato è NaN (not a number, non un numero).

Operandi
expression1:Number — Un numero o un’espressione che restituisce un numero.
expression2:Number — Un numero o un’espressione che restituisce un numero.

Risultato
Number — Il risultato dell’operazione aritmetica.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene utilizzato l’operatore assegnazione sottrazione (-=) per sottrarre 10 da 5 e assegnare il risultato alla variabile x:
var x:Number = 5; 
var y:Number = 10; 
x -= y; 
trace(x); // -5 
L’esempio seguente mostra il modo in cui le stringhe vengono convertite in numeri:
var x:String = "5"; 
var y:String = "10"; 
x -= y; 
trace(x); // -5 

Elementi API correlati

: type Operatore  
Uso

[modifiers] var variableName:type
function functionName():type { ... }
function functionName(parameter1:type, ..., parameterN:type) [:type]{ ... } 

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Utilizzato per l’assegnazione di un tipo di dati; questo operatore specifica il tipo di variabile, il tipo di funzione restituito o il tipo di parametro di funzione. Se utilizzato in una dichiarazione o assegnazione di variabile, questo operatore specifica il tipo di variabile; quando viene utilizzato in una dichiarazione o definizione della funzione, specifica il tipo restituito da una funzione; se viene utilizzato con un parametro di funzione nella definizione di una funzione, specifica il tipo di variabile prevista per quel parametro.

Il controllo del tipo viene sempre eseguito in fase di runtime. Tuttavia, quando il compilatore è eseguito in modalità rigorosa, tutti i tipi vengono verificati al momento della compilazione e, in caso di mancata corrispondenza, vengono generati i relativi errori. Gli errori di corrispondenza possono verificarsi durante le operazioni di assegnazione, le chiamate di funzione e l’annullamento di riferimenti dei membri di classe mediante l’ operatore punto (.).

Possono essere utilizzati tutti i tipi di oggetti nativi, le classi e le interfacce definite dall’utente e void. I tipi nativi riconosciuti sono Boolean, Number, int, uint e String. Anche tutte le classi incorporate sono supportate come tipi nativi.

Se non si assegna un tipo di dati, la variabile, il valore restituito della funzione o il parametro di funzione viene considerato privo di tipo, ovvero il valore può essere di qualunque tipo di dati. Se si desidera esplicitare l’intenzione di utilizzare un valore privo di tipo, è possibile utilizzare il carattere di asterisco (*) come annotazione di tipo. Quando è utilizzato in un’annotazione di tipo, il carattere asterisco equivale a lasciare senza tipo una variabile, il tipo restituito di una funzione o un parametro di funzione.

Operandi
variableName:* — Un identificatore per una variabile.
type:* — Un tipo di dati nativo, un nome di classe definito dall’utente o un nome di interfaccia.
functionName:Function — Un identificatore per una funzione.
parameter:* — Un identificatore per un parametro di funzione.

Esempio
Come utilizzare questo esempio
Uso 1: nell’esempio seguente viene dichiarata una variabile pubblica di nome userName il cui tipo è String e a cui viene assegnata una stringa vuota:
var userName:String = ""; 
Uso 2: nell’esempio seguente viene illustrato come specificare il tipo restituito di una funzione definendo una funzione di nome randomInt che specifica int come proprio tipo restituito:
function randomInt(integer:int):int { 
	return Math.round(Math.random()*integer); 
} 
trace(randomInt(8)); 
Uso 5: nell’esempio seguente viene definita una funzione di nome squareRoot() che usa un parametro di nome val di tipo Number e restituisce la radice quadrata di val, anch’essa di tipo Number:
function squareRoot(val:Number):Number { 
	return Math.sqrt(val); 
} 
trace(squareRoot(121)); 

Elementi API correlati

 typeof Operatore  
Uso

typeof expression

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Valuta expression e restituisce una stringa che specifica il tipo di dati dell’espressione. Il risultato è limitato a sei possibili valori di stringa: boolean, function, number, object, string e xml. Se si applica questo operatore a un’istanza di una classe definita dall’utente, il risultato è la stringa object. L’operatore typeof è stato incluso per assicurare la compatibilità retroattiva. Utilizzate l’operatore is per verificare la compatibilità di tipo.

Operandi
expression:Object — Un oggetto da valutare.

Risultato
String — Una rappresentazione sotto forma di stringa del tipo di expression. Nella tabella seguente sono illustrati i risultati dell’operatore typeof su ciascun tipo di espressione.

Tipo di espressione

Risultato

Array

l’oggetto

Boolean

boolean

Function

function

int

number

Number

number

Object

l’oggetto

String

string

uint

number

XML

xml

XMLList

xml

*

undefined


Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato il risultato dell’uso di typeof su vari oggetti e valori.
trace(typeof Array); // object
trace(typeof Date);  // object
trace(typeof 3);     // number
Nell’esempio seguente viene illustrato che in ActionScript 3.0 il tipo di dati di un oggetto di base è lo stesso a prescindere che venga assegnato un valore letterale o utilizzato l’operatore new per creare un oggetto. Nelle versioni precedenti di ActionScript, invece, l’operatore typeof restituisce object per la variabile b:
var a:String = "sample";
var b:String = new String("sample");
trace(typeof a); // string
trace(typeof b); // string 

Elementi API correlati

 void Operatore  
Uso

void expression

Versioni runtime: Flash Player 9

Valuta un’espressione, quindi ne scarta il valore e restituisce undefined. L’operatore void viene spesso utilizzato nei confronti che utilizzano l’operatore == per verificare i valori undefined.

Operandi
expression:Object — Un’espressione da valutare.

Risultato
* — Il valore di undefined.
< > XML literal tag delimiter Operatore  
Uso

 myXML= <{tagName} {attributeName} = {attributeValue}>{content}

Versione linguaggio: ActionScript 3.0
Versioni runtime: Flash Player 9

Definisce un tag XML in un letterale XML. Utilizzate la barra (/) per definire il tag di chiusura.

Operandi
myXML:* — Un oggetto XML o XMLList.
tagName:* — Un’espressione che restituisce il nome di un tag XML.
attributeName:* — Un’espressione che restituisce il nome di un attributo XML.
attributeValue:* — Un’espressione che restituisce il valore di un attributo XML.
content:* — Un’espressione che restituisce il contenuto di un tag XML.

Esempio
Come utilizzare questo esempio
Nell’esempio seguente viene illustrato come utilizzare gli operatori < e > nella definizione di un letterale XML:
var x:XML = <item id= "324">cola</item>; 

Elementi API correlati

[ X ]Perché in inglese?
Il contenuto della Guida di riferimento di ActionScript 3.0 appare in inglese

Non tutte le parti della Guida di riferimento di ActionScript 3.0 sono tradotte in tutte le lingue. Quando un elemento del linguaggio non è tradotto, viene riportato in inglese. Ad esempio, la classe ga.controls.HelpBox non è tradotta in nessuna lingua. Pertanto, nella versione italiana della guida di riferimento, la descrizione della classe ga.controls.HelpBox è riportata in inglese.