Справочник по ActionScript® 3.0 для платформы Adobe® Flash®
Домашняя страница  |  Скрыть список пакетов и классов |  Пакеты  |  Классы  |  Что нового  |  Указатель  |  Приложения  |  Почему по-английски?
Фильтры: AIR 30.0 или более ранней версии, Flash Player 30.0 или более ранней версии, Flash Lite 4
Flex 4.6 или более ранней версии, Flash Pro CS6 или более ранней версии
Скрыть фильтры
Верхний уровень 

Array  - AS3

Пакетыx

Верхний уровень
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

Элементы языка

Глобальные константы
Глобальные функции
Операторы
Инструкции, ключевые слова и директивы
Специальные типы

Приложения

Новые возможности
Ошибки компилятора
Предупреждения компилятора
Ошибки времени выполнения
Миграция ActionScript 3
Поддерживаемые наборы символов
Только MXML
Элементы движения XML
Теги Timed Text
устаревший_индекс
Константы реализации специальных возможностей
Использование примеров
Юридическая информация

Классы 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
ПакетВерхний уровень
Классpublic dynamic class Array
НаследованиеArray Inheritance Object

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Класс Array обеспечивает доступ к массивам и их обработку. Индексы массива начинаются с нуля. Это значит, что первый элемент массива имеет индекс [0], второй элемент — индекс [1] и т. д. Чтобы создать объект Array, можно воспользоваться конструктором new Array(). Объект Array() можно также вызвать в виде функции. Кроме того, можно воспользоваться оператором доступа к массиву ([]), чтобы инициализировать массив или выполнить доступ к его элементам.

В элементе массива можно сохранять широкий спектр типов данных, включая числа, строки, объекты и даже другие массивы. Можно создать многомерный массив. Для этого нужно создать индексированный массив и присвоить каждому из его элементов другой индексированный массив. Такой массив считается многомерным, поскольку его можно использовать для представления данных в виде таблицы.

Массивы являются разреженными. Это значит, что один элемент может иметь индекс 0, а другой — индекс 5, но позиции индекса между двумя этими элементами будут пустыми. В подобном случае элементы на позициях с 1 по 4 не определены, что указывает на отсутствие элемента, а не обязательно на присутствие элемента со значением undefined.

Присваивание массива выполняется по ссылке, а не по значению. Когда одна переменная массива присваивается другой переменной массива, они обе относятся к одному и тому же массиву:

 var oneArray:Array = new Array("a", "b", "c");
 var twoArray:Array = oneArray; // Both array variables refer to the same array.
 twoArray[0] = "z";             
 trace(oneArray);               // Output: z,b,c.
 

Не применяйте класс Array для создания массивов ассоциативных элементов (называемых также хэшами), которые представляют собой структуры данных, элементам которых присваиваются имена, а не числа. Чтобы создать массивы ассоциативных элементов, воспользуйтесь классом Object. Хотя ActionScript позволяет создавать массивы ассоциативных элементов с помощью класса Array, ни один из методов и свойств класса Array нельзя использовать с этими массивами.

Класс Array можно расширить, переопределив или добавив методы. Однако этот подкласс необходимо сделать dynamic, чтобы не утратить возможность сохранения данных в массиве.

Посмотреть примеры

Связанные элементы API



Общедоступные свойства
 СвойствоОпределено
 Inheritedconstructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта.
Object
  length : uint
Неотрицательное целое число, которым задается количество элементов в массиве.
Array
Общедоступные методы
 МетодОпределено
  
Array(... values)
Позволяет создавать массив, содержащий заданные элементы.
Array
  
Array(numElements:int = 0)
Позволяет создавать массивы с заданным числом элементов.
Array
  
Указанные в параметрах элементы сцепляются с элементами в массиве, и создается новый массив.
Array
  
every(callback:Function, thisObject:* = null):Boolean
Выполняет тестовую функцию для каждого элемента массива, пока не будет достигнут элемент, возвращающий значение false для заданной функции.
Array
  
filter(callback:Function, thisObject:* = null):Array
Выполняет тестовую функцию для каждого элемента массива и формирует новый массив из всех элементов, возвращающих значение true для заданной функции.
Array
  
forEach(callback:Function, thisObject:* = null):void
Выполняет функцию для каждого элемента массива.
Array
 Inherited
Показывает, определено ли заданное свойство для объекта.
Object
  
indexOf(searchElement:*, fromIndex:int = 0):int
Ищет элемент в массиве с использованием строгого равенства (===) и возвращает позицию элемента в индексе.
Array
  
insertAt(index:int, element:*):void
Вставьте один элемент в массив.
Array
 Inherited
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра.
Object
  
Преобразует элементы массива в строки, вставляет указанный разделитель между элементами, сцепляет их и возвращает получившуюся строку.
Array
  
lastIndexOf(searchElement:*, fromIndex:int = 0x7fffffff):int
Ищет элемент в массиве в обратном порядке начиная с последнего элемента с использованием строгого равенства (===), затем возвращает позицию в индексе для подходящего элемента.
Array
  
map(callback:Function, thisObject:* = null):Array
Выполняет функцию для каждого элемента массива и формирует новый массив из элементов, соответствующих результатам функции для каждого элемента исходного массива.
Array
  
pop():*
Удаляет последний элемент из массива и возвращает значение этого элемента.
Array
 Inherited
Показывает наличие заданного свойства и его перечисляемость.
Object
  
push(... args):uint
Добавляет один или несколько элементов в конец массива и возвращает новую длину массива.
Array
  
removeAt(index:int):*
Удалите один элемент из массива.
Array
  
Преобразует массив в обратный массив.
Array
 Inherited
Задает доступность динамического свойства для операций цикла.
Object
  
Удаляет первый элемент из массива и возвращает этот элемент.
Array
  
slice(startIndex:int = 0, endIndex:int = 16777215):Array
Возвращает новый массив, состоящий из диапазона элементов исходного массива, не модифицируя исходный массив.
Array
  
some(callback:Function, thisObject:* = null):Boolean
Выполняет тестовую функцию для каждого элемента массива, пока не будет достигнут элемент, возвращающий значение true.
Array
  
sort(... args):Array
Сортирует элементы в массиве.
Array
  
sortOn(fieldName:Object, options:Object = null):Array
Сортирует элементы в массиве по одному или нескольким полям массива.
Array
  
splice(startIndex:int, deleteCount:uint, ... values):Array
Добавляет элементы в массив и удаляет элементы из массива.
Array
  
Возвращает строку, представляющую элементы в заданном массиве.
Array
  
Возвращает строку, представляющую элементы в заданном массиве.
Array
  
Добавляет один или несколько элементов в начало массива и возвращает новую длину массива.
Array
 Inherited
Возвращает элементарное значение заданного объекта.
Object
Общедоступные константы
 КонстантаОпределено
  CASEINSENSITIVE : uint = 1
[статические] Задает сортировку без учета регистра для методов сортировки класса Array.
Array
  DESCENDING : uint = 2
[статические] Задает сортировку по убыванию для методов сортировки класса Array.
Array
  NUMERIC : uint = 16
[статические] Задает числовую сортировку (вместо сортировки по символьной строке) для методов сортировки класса Array.
Array
  RETURNINDEXEDARRAY : uint = 8
[статические] Задает сортировку, которая возвращает массив, состоящий из индексов массивов.
Array
  UNIQUESORT : uint = 4
[статические] Задает уникальное требование сортировки для методов сортировки класса Array.
Array
Сведения о свойстве

length

свойство
length:uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Неотрицательное целое число, которым задается количество элементов в массиве. Это свойство автоматически обновляется, когда в массив добавляются новые элементы. Когда элементу массива присваивается свойство (например, my_array[index] = value), если index является числом, а index+1 превышает значение свойства length, свойство length обновляется, принимая значение index+1.

Примечание. Если свойству length присваивается значение, которое меньше существующей длины, массив усекается.



Реализация
    public function get length():uint
    public function set length(value:uint):void

Пример  ( Использование этого примера )
Следующий код создает объект Array names со строковым элементом Bill. После этого используется метод push() для добавления еще одного строкового элемента Kyle. Длина массива, определяемая свойством length, составляла один элемент перед применением метода push(). После вызова push() она составляет два элемента. Добавляется еще одна строка (Jeff), которая увеличивает длину объекта names до трех элементов. Затем дважды вызывается метод shift() для удаления элементов Bill и Kyle, после чего параметру length массива присваивается значение 1.
var names:Array = new Array("Bill");
names.push("Kyle");
trace(names.length); // 2

names.push("Jeff");
trace(names.length); // 3

names.shift();
names.shift();
trace(names.length); // 1
Сведения о конструкторе

Array

()Конструктор
public function Array(... values)

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Позволяет создавать массив, содержащий заданные элементы. Можно указывать значения любого типа. Первый элемент в массиве всегда имеет индекс (или позицию) 0.

Примечание. В этом классе показаны две записи конструктора, поскольку конструктор поддерживает разные типы аргументов. Режим работы конструктора меняется в зависимости от типа и количества переданных аргументов (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.

Параметры
... values — Список из одного или нескольких произвольных значений, разделенных запятыми.

Примечание. Если в конструктор Array передается единичный числовой параметр, предполагается, что указано свойство массива length.


Выдает
RangeError — Аргумент — это число, которое не является целым числом большим или равным 0.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере создается новый объект Array с первоначальной длиной 3, массив заполняется строковыми элементами one, two и three, а затем элементы преобразуются в строку.
package {
    import flash.display.Sprite;

    public class Array_Array_3 extends Sprite {

        public function Array_Array_3() {
            var myArr:Array = new Array("one", "two", "three");
            trace(myArr.length); // 3
            trace(myArr);          // one,two,three
        }
    }
}

Array

()Конструктор 
public function Array(numElements:int = 0)

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Позволяет создавать массивы с заданным числом элементов. Если не указать никаких параметров, создается массив с нулевым количеством элементов. Если указан ряд элементов, создается массив с количеством элементов numElements.

Примечание. В этом классе показаны две записи метода конструктора, поскольку конструктор поддерживает разные типы аргументов. Режим работы конструктора меняется в зависимости от типа и количества переданных аргументов (см. описание в записях). ActionScript 3.0 не поддерживает переопределение метода или конструктора.

Параметры
numElements:int (default = 0) — Целое число, указывающее количество элементов в массиве.

Выдает
RangeError — Аргумент — это число, которое не является целым числом большим или равным 0.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере создается новый объект Array myArr без аргументов и с первоначальной длиной 0:
package {
    import flash.display.Sprite;

    public class Array_Array extends Sprite {

        public function Array_Array() {
            var myArr:Array = new Array();
            trace(myArr.length); // 0
        }
    }
}

В следующем примере создается объект Array с 5 начальными элементами и длиной 5. Первый элемент заполняется строкой one, а в конец массива добавляется строковый элемент six с помощью метода push():
package {
    import flash.display.Sprite;

    public class Array_Array_2 extends Sprite {

        public function Array_Array_2() {
            var myArr:Array = new Array(5);
            trace(myArr.length); // 5
            myArr[0] = "one";
            myArr.push("six");
            trace(myArr);         // one,,,,,six
            trace(myArr.length); // 6
        }
    }
}
Сведения о методе

concat

()метод
AS3 function concat(... args):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Указанные в параметрах элементы сцепляются с элементами в массиве, и создается новый массив. Если параметры задают массив, элементы этого массива сцепляются. Если параметры не передаются, новый массив дублирует исходный массив (как поверхностный клон).

Параметры

... args — Значение любого типа данных (например, числа, элементы или строки), которые необходимо сцепить в новом массиве.

Возвращает
Array — Массив, содержащий элементы из этого массива, за которыми указаны элементы из параметров.

Пример  ( Использование этого примера )

Следующий код создает четыре объекта Array:
  • Массив numbers, содержащий цифры 1, 2 и 3.
  • Массив letters, содержащий буквы a, b и c.
  • Массив numbersAndLetters, вызывающий метод concat() для создания массива [1,2,3,a,b,c].
  • Массив lettersAndNumbers, вызывающий метод concat() для создания массива [a,b,c,1,2,3].
var numbers:Array = new Array(1, 2, 3);
var letters:Array = new Array("a", "b", "c");
var numbersAndLetters:Array = numbers.concat(letters);
var lettersAndNumbers:Array = letters.concat(numbers);

trace(numbers);       // 1,2,3
trace(letters);       // a,b,c
trace(numbersAndLetters); // 1,2,3,a,b,c
trace(lettersAndNumbers); // a,b,c,1,2,3

every

()метод 
AS3 function every(callback:Function, thisObject:* = null):Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Выполняет тестовую функцию для каждого элемента массива, пока не будет достигнут элемент, возвращающий значение false для заданной функции. Этот метод используется для того, чтобы определить, все ли элементы массива соответствуют критерию (например, их значения должны быть меньше определенного числа).

Второй параметр этого метода, thisObject, должен иметь значение null, если первый параметр, callback, завершает метод. Предположим, что функция создается во фрагменте ролика с названием me:

     function myFunction(obj:Object):void {
        //your code here
     }
     

Допустим, что используется метод every() по отношению к массиву myArray:

     myArray.every(myFunction, me);
     

Поскольку myFunction принадлежит классу Timeline, который не может быть переопределен фрагментом ролика me, среда выполнения Flash создает исключение. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:

     var myFunction:Function = function(obj:Object):void {
         //your code here
     };
     myArray.every(myFunction, me);
     

Параметры

callback:Function — Функция, выполняемая с каждым элементом массива. Эта функция может содержать простое сравнение (например, item < 20) или более сложную операцию. Она вызывается по трем аргументам: значению элемента, индексу элемента и объекту Array:
function callback(item:*, index:int, array:Array):Boolean;
 
thisObject:* (default = null) — Объект, используемый для этой функции в качестве this.

Возвращает
Boolean — Логическое значение true, если все элементы в массиве возвращают значение true для указанной функции; в противном случае присваивается значение false.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере тестируются два массива, чтобы определить, является ли каждый элемент того или иного массива числом. Указываются также результаты теста: параметр isNumeric имеет значение true для первого массива и false для второго:
package {
    import flash.display.Sprite;
    public class Array_every extends Sprite {
        public function Array_every() {
            var arr1:Array = new Array(1, 2, 4);
            var res1:Boolean = arr1.every(isNumeric);
            trace("isNumeric:", res1); // true
 
            var arr2:Array = new Array(1, 2, "ham");
            var res2:Boolean = arr2.every(isNumeric);
            trace("isNumeric:", res2); // false
        }
        private function isNumeric(element:*, index:int, arr:Array):Boolean {
            return (element is Number);
        }
    }
}

filter

()метод 
AS3 function filter(callback:Function, thisObject:* = null):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Выполняет тестовую функцию для каждого элемента массива и формирует новый массив из всех элементов, возвращающих значение true для заданной функции. Если элемент возвращает значение false, он не включается в новый массив.

Второй параметр этого метода, thisObject, должен иметь значение null, если первый параметр, callback, завершает метод. Предположим, что функция создается во фрагменте ролика с названием me:

     function myFunction(obj:Object):void {
        //your code here
     }
     

Допустим, что используется метод filter() по отношению к массиву с именем myArray:

 
     myArray.filter(myFunction, me);
     

Поскольку myFunction принадлежит классу Timeline, который не может быть переопределен фрагментом ролика me, среда выполнения Flash создает исключение. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:

     var myFunction:Function = function(obj:Object):void {
         //your code here
         };
     myArray.filter(myFunction, me);
     

Параметры

callback:Function — Функция, выполняемая с каждым элементом массива. Эта функция может содержать простое сравнение (например, item < 20) или более сложную операцию. Она вызывается по трем аргументам: значению элемента, индексу элемента и объекту Array:
    function callback(item:*, index:int, array:Array):Boolean;
 
thisObject:* (default = null) — Объект, используемый для этой функции в качестве this.

Возвращает
Array — Новый массив, содержащий все элементы исходного массива, вернувшие значение true.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере создается массив из всех сотрудников-менеджеров:
package {
    import flash.display.Sprite;
    public class Array_filter extends Sprite {
        public function Array_filter() {
            var employees:Array = new Array();
            employees.push({name:"Employee 1", manager:false});
            employees.push({name:"Employee 2", manager:true});
            employees.push({name:"Employee 3", manager:false});
            trace("Employees:");
            employees.forEach(traceEmployee);
            
            var managers:Array = employees.filter(isManager);
            trace("Managers:");
            managers.forEach(traceEmployee);
        }
        private function isManager(element:*, index:int, arr:Array):Boolean {
            return (element.manager == true);
        }
        private function traceEmployee(element:*, index:int, arr:Array):void {
            trace("\t" + element.name + ((element.manager) ? " (manager)" : ""));
        }
    }
}

forEach

()метод 
AS3 function forEach(callback:Function, thisObject:* = null):void

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Выполняет функцию для каждого элемента массива.

Второй параметр этого метода, thisObject, должен иметь значение null, если первый параметр, callback, завершает метод. Предположим, что функция создается во фрагменте ролика с названием me:

     function myFunction(obj:Object):void {
        //your code here
     }
     

Допустим, что используется метод forEach() по отношению к массиву с именем myArray:

     myArray.forEach(myFunction, me);
     

Поскольку myFunction принадлежит классу Timeline, который не может быть переопределен фрагментом ролика me, среда выполнения Flash создает исключение. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:

     var myFunction:Function = function(obj:Object):void {
         //your code here
         };
     myArray.forEach(myFunction, me);
     

Параметры

callback:Function — Функция, выполняемая с каждым элементом массива. Эта функция может содержать простую команду (например, инструкция trace()) или более сложную операцию. Она вызывается по трем аргументам: значению элемента, индексу элемента и объекту Array:
    function callback(item:*, index:int, array:Array):void;
 
thisObject:* (default = null) — Объект, используемый для этой функции в качестве this.


Пример  ( Использование этого примера )

В следующем примере инструкция trace() выполняется в функции traceEmployee() по отношению к каждому элементу массива:
package {
    import flash.display.Sprite;
    public class Array_forEach extends Sprite {
        public function Array_forEach() {
            var employees:Array = new Array();
            employees.push({name:"Employee 1", manager:false});
            employees.push({name:"Employee 2", manager:true});
            employees.push({name:"Employee 3", manager:false});
            trace(employees);
            employees.forEach(traceEmployee);
        }
        private function traceEmployee(element:*, index:int, arr:Array):void {
            trace(element.name + " (" + element.manager + ")");
        }
    }
}

В следующем примере инструкция trace() также выполняется в немного измененной функции traceEmployee() по отношению к каждому элементу массива:
package {
    import flash.display.Sprite;
    public class Array_forEach_2 extends Sprite {
        public function Array_forEach_2() {
            var employeeXML:XML = <employees>
                    <employee name="Steven" manager="false" />
                    <employee name="Bruce" manager="true" />
                    <employee name="Rob" manager="false" />
                </employees>;
            var employeesList:XMLList = employeeXML.employee;
            var employeesArray:Array = new Array();
            for each (var tempXML:XML in employeesList) {
                employeesArray.push(tempXML);
            }
            employeesArray.sortOn("@name");
            employeesArray.forEach(traceEmployee);
        }
        private function traceEmployee(element:*, index:Number, arr:Array):void {
            trace(element.@name + ((element.@manager == "true") ? " (manager)" : ""));
        }
    }
}

indexOf

()метод 
AS3 function indexOf(searchElement:*, fromIndex:int = 0):int

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Ищет элемент в массиве с использованием строгого равенства (===) и возвращает позицию элемента в индексе.

Параметры

searchElement:* — Элемент, который требуется найти в массиве.
 
fromIndex:int (default = 0) — Место в массиве, в которого начинается поиск элемента.

Возвращает
int — Позиция индекса, начинающегося с нуля, для элемента массива. Если аргумент searchElement не найден, возвращается значение «-1».

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере показана позиция указанного массива:
package {
    import flash.display.Sprite;
    public class Array_indexOf extends Sprite {
        public function Array_indexOf() {
            var arr:Array = new Array(123,45,6789);
            arr.push("123-45-6789");
            arr.push("987-65-4321");
            
            var index:int = arr.indexOf("123");
            trace(index); // -1
            
            var index2:int = arr.indexOf(123);
            trace(index2); // 0
        }
    }
}

insertAt

()метод 
AS3 function insertAt(index:int, element:*):void

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 19, AIR 19

Вставьте один элемент в массив. Этот метод изменяет массив, не создавая копии.

Параметры

index:int — Целое число, указывающее позицию в массиве, куда необходимо вставить элемент. Для указания позиции относительно конца массива можно использовать отрицательное число (например, -1 — это последний элемент массива).
 
element:*

join

()метод 
AS3 function join(sep:*):String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Преобразует элементы массива в строки, вставляет указанный разделитель между элементами, сцепляет их и возвращает получившуюся строку. Вложенный массив всегда разделяется запятой (,), а не разделителем, переданным методу join().

Параметры

sep:* (default = NaN) — Символ или строка, которые разделяют элементы массива в возвращенной строке. Если этот параметр пропустить, в качестве разделителя по умолчанию используется запятая.

Возвращает
String — Строка, состоящая из элементов массива, преобразованных в строки и разделенных указанным параметром.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает объект Array myArr с элементами one, two, three и затем строку, содержащую one and two and three, с помощью метода join().
var myArr:Array = new Array("one", "two", "three");
var myStr:String = myArr.join(" and ");
trace(myArr); // one,two,three
trace(myStr); // one and two and three

Следующий код создает объект Array specialChars с элементами (, ), - и пробелом, а затем создает строку с номером (888) 867-5309. После этого с помощью цикла for он удаляет все типы специальных символов, перечисленные в specialChars, чтобы создать строку (myStr), которая содержит только цифры телефонного номера: 888675309. Учтите, что другие символы (например, +) могли быть включены в список specialChars. При этом данная процедура начинает поддерживать форматы международных телефонных номеров.
var phoneString:String = "(888) 867-5309";

var specialChars:Array = new Array("(", ")", "-", " ");
var myStr:String = phoneString;

var ln:uint = specialChars.length;
for(var i:uint; i < ln; i++) {
    myStr = myStr.split(specialChars[i]).join("");
}

var phoneNumber:Number = new Number(myStr);

trace(phoneString); // (888) 867-5309
trace(phoneNumber); // 8888675309

lastIndexOf

()метод 
AS3 function lastIndexOf(searchElement:*, fromIndex:int = 0x7fffffff):int

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Ищет элемент в массиве в обратном порядке начиная с последнего элемента с использованием строгого равенства (===), затем возвращает позицию в индексе для подходящего элемента.

Параметры

searchElement:* — Элемент, который требуется найти в массиве.
 
fromIndex:int (default = 0x7fffffff) — Место в массиве, в которого начинается поиск элемента. Значение по умолчанию — максимально допустимое значение индекса. Если параметр fromIndex не указан, поиск начинается с последнего элемента массива.

Возвращает
int — Позиция индекса, начинающегося с нуля, для элемента массива. Если аргумент searchElement не найден, возвращается значение «-1».

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере показана позиция указанного массива:
package {
    import flash.display.Sprite;
    public class Array_lastIndexOf extends Sprite {
        public function Array_lastIndexOf() {
            var arr:Array = new Array(123,45,6789,123,984,323,123,32);
            
            var index:int = arr.indexOf(123);
            trace(index); // 0
            
            var index2:int = arr.lastIndexOf(123);
            trace(index2); // 6
        }
    }
}

map

()метод 
AS3 function map(callback:Function, thisObject:* = null):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Выполняет функцию для каждого элемента массива и формирует новый массив из элементов, соответствующих результатам функции для каждого элемента исходного массива.

Второй параметр этого метода, thisObject, должен иметь значение null, если первый параметр, callback, завершает метод. Предположим, что функция создается во фрагменте ролика с названием me:

     function myFunction(obj:Object):void {
        //your code here
     }
     

Допустим, что используется метод map() по отношению к массиву с именем myArray:

     myArray.map(myFunction, me);
     

Поскольку myFunction принадлежит классу Timeline, который не может быть переопределен фрагментом ролика me, среда выполнения Flash создает исключение. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:

     var myFunction:Function = function(obj:Object):void {
         //your code here
         };
     myArray.map(myFunction, me);
     

Параметры

callback:Function — Функция, выполняемая с каждым элементом массива. Эта функция может содержать простую команду (например, изменение регистра строкового массива) или более сложную операцию. Она вызывается по трем аргументам: значению элемента, индексу элемента и объекту Array:
    function callback(item:*, index:int, array:Array):String;
 
thisObject:* (default = null) — Объект, используемый для этой функции в качестве this.

Возвращает
Array — Новый массив, который содержит результаты функции, выполняемой по отношению к каждому элементу исходного массива.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере все строчные буквы в элементах массива заменяются прописными:
package {
    import flash.display.Sprite;
    public class Array_map extends Sprite {
        public function Array_map() {
            var arr:Array = new Array("one", "two", "Three");
            trace(arr); // one,two,Three

            var upperArr:Array = arr.map(toUpper);
            trace(upperArr); // ONE,TWO,THREE
        }
        private function toUpper(element:*, index:int, arr:Array):String {
            return String(element).toUpperCase();
        }
    }
}

pop

()метод 
AS3 function pop():*

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Удаляет последний элемент из массива и возвращает значение этого элемента.

Возвращает
* — Значение последнего элемента (любого типа данных) в указанном массиве.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает объект Array letters с элементами a, b и c. Последний элемент (c) удаляется впоследствии из массива с помощью метода pop() и присваивается объекту String letter.
var letters:Array = new Array("a", "b", "c");
trace(letters); // a,b,c
var letter:String = letters.pop();
trace(letters); // a,b
trace(letter);     // c

push

()метод 
AS3 function push(... args):uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Добавляет один или несколько элементов в конец массива и возвращает новую длину массива.

Параметры

... args — Одно или несколько значений, добавляемых в массив.

Возвращает
uint — Целое число, выражающее длину нового массива.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает пустой объект Array letters, а затем заполняет массив элементами a, b и c с помощью метода push().
var letters:Array = new Array();

letters.push("a");
letters.push("b");
letters.push("c");

trace(letters.toString()); // a,b,c

Следующий код создает объект Array letters, который сначала заполняется элементом a. После этого однократно используется метод push() для добавления элементов b и c в конец массива, который находится на расстоянии трех элементов от элемента, созданного методом push.
var letters:Array = new Array("a");
var count:uint = letters.push("b", "c");

trace(letters); // a,b,c
trace(count);   // 3

removeAt

()метод 
AS3 function removeAt(index:int):*

Язык версии: ActionScript 3.0
Версии среды выполнения: Flash Player 19, AIR 19

Удалите один элемент из массива. Этот метод изменяет массив, не создавая копии.

Параметры

index:int — Целое число, указывающее индекс удаляемого элемента в массиве. Для указания позиции относительно конца массива можно использовать отрицательное число (например, -1 — это последний элемент массива).

Возвращает
* — Элемент, который был удален из исходного массива.

reverse

()метод 
AS3 function reverse():Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Преобразует массив в обратный массив.

Возвращает
Array — Новый массив.

Пример  ( Использование этого примера )

Следующий код создает объект Array letters с элементами a, b и c. Порядок элементов массива заменяется затем на противоположный методом reverse(), чтобы создать массив [c,b,a].
var letters:Array = new Array("a", "b", "c");
trace(letters); // a,b,c
letters.reverse();
trace(letters); // c,b,a

shift

()метод 
AS3 function shift():*

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Удаляет первый элемент из массива и возвращает этот элемент. Оставшиеся элементы массива перемещаются с исходной позицию «i» на позицию «i-1».

Возвращает
* — Первый элемент (любого типа данных) в массиве.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает объект Array letters с элементами a, b и c. Затем применяется метод shift() для удаления первого элемента (a) из объекта letters и присвоения его строке firstLetter.
var letters:Array = new Array("a", "b", "c");
var firstLetter:String = letters.shift();
trace(letters);     // b,c
trace(firstLetter); // a

slice

()метод 
AS3 function slice(startIndex:int = 0, endIndex:int = 16777215):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает новый массив, состоящий из диапазона элементов исходного массива, не модифицируя исходный массив. Возвращенный массив включает элемент startIndex и все элементы вплоть до него, исключая элемент endIndex.

Если параметры не передаются, новый массив дублирует исходный массив (как поверхностный клон).

Параметры

startIndex:int (default = 0) — Число, указывающее на индекс начальной позиции среза. Если startIndex — отрицательное число, начальной позицией становится конец массива, последнему элементу которого присваивается позиция «-1».
 
endIndex:int (default = 16777215) — Число, указывающее на индекс конечной позиции среза. Если этот параметр пропустить, срез включает все элементы от начальной позиции до конца массива. Если endIndex — отрицательное число, конечная позиция указывается с конца массива, последнему элементу которого присваивается позиция «-1».

Возвращает
Array — Массив, состоящий из диапазона элементов исходного массива.

Пример  ( Использование этого примера )

Следующий код создает объект Array letters с элементами [a,b,c,d,e,f]. После этого создается массив someLetters путем вызова метода slice(), который применяется к элементам с первого (b) по третий (d). В результате получается массив с элементами b и c.
var letters:Array = new Array("a", "b", "c", "d", "e", "f");
var someLetters:Array = letters.slice(1,3);

trace(letters);     // a,b,c,d,e,f
trace(someLetters); // b,c

Следующий код создает объект Array letters с элементами [a,b,c,d,e,f]. Затем создается массив someLetters путем вызова метода slice() по отношению ко второму элементу (c). В результате получается массив с элементами [c,d,e,f].
var letters:Array = new Array("a", "b", "c", "d", "e", "f");
var someLetters:Array = letters.slice(2);

trace(letters);     // a,b,c,d,e,f
trace(someLetters); // c,d,e,f

Следующий код создает объект Array letters с элементами [a,b,c,d,e,f]. После этого создается массив someLetters путем вызова метода slice() по отношению ко второму элементу с конца (e). Это приводит к появлению массива с элементами e и f.
var letters:Array = new Array("a", "b", "c", "d", "e", "f");
var someLetters:Array = letters.slice(-2);

trace(letters);     // a,b,c,d,e,f
trace(someLetters); // e,f

some

()метод 
AS3 function some(callback:Function, thisObject:* = null):Boolean

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Выполняет тестовую функцию для каждого элемента массива, пока не будет достигнут элемент, возвращающий значение true. Этот метод используется для того, чтобы определить, все ли элементы массива соответствуют критерию (например, их значения должны быть меньше определенного числа).

Второй параметр этого метода, thisObject, должен иметь значение null, если первый параметр, callback, завершает метод. Предположим, что функция создается во фрагменте ролика с названием me:

     function myFunction(obj:Object):void {
        //your code here
     }
     

Допустим, что используется метод some() по отношению к массиву с именем myArray:

     myArray.some(myFunction, me);
     

Поскольку myFunction принадлежит классу Timeline, который не может быть переопределен фрагментом ролика me, среда выполнения Flash создает исключение. Этой ошибки при выполнении можно избежать, присвоив функцию переменной следующим образом:

     var myFunction:Function = function(obj:Object):void {
         //your code here
         };
     myArray.some(myFunction, me);
     

Параметры

callback:Function — Функция, выполняемая с каждым элементом массива. Эта функция может содержать простое сравнение (например, item < 20) или более сложную операцию. Она вызывается по трем аргументам: значению элемента, индексу элемента и объекту Array:
    function callback(item:*, index:int, array:Array):Boolean;
 
thisObject:* (default = null) — Объект, используемый для этой функции в качестве this.

Возвращает
Boolean — Логическое значение true, если какие-либо элементы в массиве возвращают значение true для указанной функции; в противном случае присваивается значение false.

Связанные элементы API


Пример  ( Использование этого примера )

В следующем примере показано, какие значения не определены:
package {
    import flash.display.Sprite;
    public class Array_some extends Sprite {
        public function Array_some() {
            var arr:Array = new Array();
            arr[0] = "one";
            arr[1] = "two";
            arr[3] = "four";
            var isUndef:Boolean = arr.some(isUndefined);
            if (isUndef) {
                trace("array contains undefined values: " + arr);
            } else {
                trace("array contains no undefined values.");
            }
        }
        private function isUndefined(element:*, index:int, arr:Array):Boolean {
            return (element == undefined);
        }
    }
}

sort

()метод 
AS3 function sort(... args):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Сортирует элементы в массиве. Этот метод применяется для сортировки по значениям Юникода. (ASCII — это подмножество Юникода.)

По умолчанию Array. sort() действует следующим образом:

  • Сортировка зависит от регистра (Z предшествует a).
  • Сортировка выполняется в восходящем порядке (a предшествует b).
  • Массив изменяется, отражая порядок сортировки; несколько элементов, имеющих идентичные поля сортировки последовательно размещаются в отсортированном массиве без определенного порядка.
  • Все элементы независимо от типа данных сортируются так, как если бы это были строки. Число 100 предшествует числу 99, поскольку «1» — это строковое значение, которое меньше «9».

Чтобы выполнить сортировку массива, используя настройки, которые отличаются от настроек по умолчанию, можно либо воспользоваться одной из возможностей сортировки, описанной в разделе sortOptions описания параметра ...args, либо создать собственную пользовательскую функцию сортировки. При создании пользовательской функции вызывается метод sort(), а имя пользовательской функции используется в качестве первого аргумента (compareFunction)

Параметры

... args — Аргументы, указывающие на функцию сравнения и одно или несколько значений, определяющих режим сортировки.

В этом методе используется синтаксис и порядок аргументов Array.sort(compareFunction, sortOptions), где аргументы определяются следующим образом:

  • compareFunction — функция сравнения, используемая для определения порядка сортировки элементов в массиве. Этот аргумент является необязательным. Функция сравнения требует наличия двух сравниваемых аргументов. При наличии элементов A и B функция compareFunction может возвращать отрицательное, нулевое или положительное значение:
    • Отрицательное возвращаемое значение обозначает, что A стоит перед B в отсортированной последовательности.
    • Нулевое возвращаемое значение обозначает, что элементы A и B имеют одинаковый порядок сортировки.
    • Положительное возвращаемое значение обозначает, что элемент A стоит после элемента B в отсортированной последовательности.
  • sortOptions — одно или несколько чисел или определенных констант, разделенных оператором | (побитовое ИЛИ), которые меняют режим сортировки по умолчанию. Этот аргумент является необязательным. Параметр sortOptions может принимать следующие значения:
    • 1 или Array.CASEINSENSITIVE
    • 2 или Array.DESCENDING
    • 4 или Array.UNIQUESORT
    • 8 или Array.RETURNINDEXEDARRAY
    • 16 или Array.NUMERIC
    Дополнительную информацию см. в описании метода Array.sortOn().

Возвращает
Array — Возвращаемое значение зависит от того, передаются ли аргументы (см. список):
  • Если указывается значение 4 или Array.UNIQUESORT для аргумента sortOptions параметра ...args и два или более сортируемых элемента имеют идентичные поля сортировки, Flash возвращает значение 0 и не модифицирует массив.
  • Если указывается значение 8 или Array.RETURNINDEXEDARRAY для аргумента sortOptions параметра ...args, Flash возвращает отсортированный числовой массив индексов, отражающий результаты сортировки, и не модифицирует массив.
  • В противном случае Flash ничего не возвращает и изменяет массив, чтобы отразить порядок сортировки.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает объект Array vegetables с элементами [spinach, green pepper, cilantro, onion, avocado]. После этого массив сортируется с помощью метода sort(), который вызывается без параметров. В результате объект vegetables сортируется в алфавитном порядке ([avocado, cilantro, green pepper, onion, spinach]).
var vegetables:Array = new Array("spinach",
                 "green pepper",
                 "cilantro",
                 "onion",
                 "avocado");

trace(vegetables); // spinach,green pepper,cilantro,onion,avocado
vegetables.sort();
trace(vegetables); // avocado,cilantro,green pepper,onion,spinach

Следующий код создает объект Array vegetables с элементами [spinach, green pepper, Cilantro, Onion, Avocado]. Сортировка этого массива выполняется методом sort(), который в первый раз вызывается без параметров. Результат выглядит следующим образом: [Avocado,Cilantro,Onion,green pepper,spinach]. Затем снова вызывается метод sort(), применяемый к объекту vegetables, в котором в качестве параметра выбрана константа CASEINSENSITIVE. В результате объект vegetables сортируется в алфавитном порядке ([Avocado, Cilantro, green pepper, Onion, spinach]).
var vegetables:Array = new Array("spinach",
                 "green pepper",
                 "Cilantro",
                 "Onion",
                 "Avocado");

vegetables.sort();
trace(vegetables); // Avocado,Cilantro,Onion,green pepper,spinach
vegetables.sort(Array.CASEINSENSITIVE);
trace(vegetables); // Avocado,Cilantro,green pepper,Onion,spinach

Следующий код создает пустой объект Array vegetables, который затем заполняется путем пяти вызовов метода push(). Каждый раз при вызове метода push() создается новый объект Vegetable. Для этого вызывается конструктор Vegetable(), который принимает объекты String (name) и Number (price). Пятикратный вызов метода push() с указанными значениями приводит к формированию следующего массива: [lettuce:1.49, spinach:1.89, asparagus:3.99, celery:1.29, squash:1.44]. Затем для сортировки массива используется метод sort(). В результате появляется массив [asparagus:3.99, celery:1.29, lettuce:1.49, spinach:1.89, squash:1.44].
var vegetables:Array = new Array();
vegetables.push(new Vegetable("lettuce", 1.49));
vegetables.push(new Vegetable("spinach", 1.89));
vegetables.push(new Vegetable("asparagus", 3.99));
vegetables.push(new Vegetable("celery", 1.29));
vegetables.push(new Vegetable("squash", 1.44));

trace(vegetables);
// lettuce:1.49, spinach:1.89, asparagus:3.99, celery:1.29, squash:1.44

vegetables.sort();

trace(vegetables);
// asparagus:3.99, celery:1.29, lettuce:1.49, spinach:1.89, squash:1.44

//The following code defines the Vegetable class
class Vegetable {
    private var name:String;
    private var price:Number;

    public function Vegetable(name:String, price:Number) {
        this.name = name;
        this.price = price;
    }

    public function toString():String {
        return " " + name + ":" + price;
    }
}

Следующий пример в точности напоминает предыдущий, за исключением того, что метод sort() используется вместе с пользовательской функцией сортировки (sortOnPrice), выполняющей сортировку по цене, а не в алфавитном порядке. Учтите, что цена извлекается с помощью новой функции getPrice().
var vegetables:Array = new Array();
vegetables.push(new Vegetable("lettuce", 1.49));
vegetables.push(new Vegetable("spinach", 1.89));
vegetables.push(new Vegetable("asparagus", 3.99));
vegetables.push(new Vegetable("celery", 1.29));
vegetables.push(new Vegetable("squash", 1.44));

trace(vegetables);
// lettuce:1.49, spinach:1.89, asparagus:3.99, celery:1.29, squash:1.44

vegetables.sort(sortOnPrice);

trace(vegetables);
// celery:1.29, squash:1.44, lettuce:1.49, spinach:1.89, asparagus:3.99

function sortOnPrice(a:Vegetable, b:Vegetable):Number {
    var aPrice:Number = a.getPrice();
    var bPrice:Number = b.getPrice();

    if(aPrice > bPrice) {
        return 1;
    } else if(aPrice < bPrice) {
        return -1;
    } else  {
        //aPrice == bPrice
        return 0;
    }
}

// The following code defines the Vegetable class and should be in a separate package.
class Vegetable {
    private var name:String;
    private var price:Number;

    public function Vegetable(name:String, price:Number) {
        this.name = name;
        this.price = price;
    }

    public function getPrice():Number {
        return price;
    }

    public function toString():String {
        return " " + name + ":" + price;
    }
}

Следующий код создает объект Array numbers с элементами [3,5,100,34,10]. Вызов метода sort() без параметров приводит к сортировке в алфавитном порядке. При этом появляется нежелательный результат: [10,100,3,34,5]. Чтобы правильно отсортировать числовые значения, необходимо передать константу NUMERIC методу sort(), который сортирует numbers следующим образом: [3,5,10,34,100].

Примечание. Режим функции sort() по умолчанию состоит в том, чтобы обрабатывать каждую сущность как строку. При использовании аргумента Array.NUMERIC во время выполнения Flash пытается преобразовать любые нечисловые значения в целые числа с целью сортировки. Если при этом происходит ошибка, она выдается во время выполнения. Например, время выполнения может успешно преобразовать значение String "6" к целому числу, но создаст ошибку, если встретит значение String "six".

var numbers:Array = new Array(3,5,100,34,10);

trace(numbers); // 3,5,100,34,10
numbers.sort();
trace(numbers); // 10,100,3,34,5
numbers.sort(Array.NUMERIC);
trace(numbers); // 3,5,10,34,100

sortOn

()метод 
AS3 function sortOn(fieldName:Object, options:Object = null):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Сортирует элементы в массиве по одному или нескольким полям массива. Массив должен обладать следующими характеристиками:

  • Массив является индексированным, а не массивом ассоциативных элементов.
  • Каждый элемент массива содержит объект с одним или несколькими свойствами.
  • Все объекты имеют не менее одного общего свойства, значения которого можно применять для сортировки массива. Такое свойство называется полем.

При указании нескольких параметров fieldName первое поле относится к первичному полю сортировки, второе — к вторичному полю сортировки и т.д. Сортировка в Flash выполняется по значениям Юникода. (ASCII — это подмножество Юникода.) Если любой из сравниваемых элементов не содержит поле, указанное в параметре fieldName, предполагается, что ему присвоено значение undefined, а элементы последовательно расположены в отсортированном массиве без определенного порядка.

По умолчанию Array. sortOn() действует следующим образом:

  • Сортировка зависит от регистра (Z предшествует a).
  • Сортировка выполняется в восходящем порядке (a предшествует b).
  • Массив изменяется, отражая порядок сортировки; несколько элементов, имеющих идентичные поля сортировки последовательно размещаются в отсортированном массиве без определенного порядка.
  • Числовые поля сортируются так, как если бы они были строками. Число 100 предшествует числу 99, поскольку 1 — это строковое значение, которое меньше 9.

В Flash Player 7 добавлен параметр options, который можно применять для переопределения режима сортировки по умолчанию. Чтобы отсортировать простой массив (например, массив, у которого только одно поле) или указать порядок сортировки, который не поддерживается параметром options, выберите Array.sort().

Чтобы установить несколько флагов, разделите их побитовыми операторами ИЛИ (|):

     my_array.sortOn(someFieldName, Array.DESCENDING | Array.NUMERIC);
     

В Flash Player 8 добавлена возможность выбора разных вариантов сортировки для каждого поля, когда сортировка выполняется более чем по одному полю. В Flash Player, начиная с версии 8, параметр options поддерживает массив вариантов сортировки. При этом каждый вариант сортировки соответствует полю сортировки в параметре fieldName. В следующем примере первичное поле сортировки (a) сортируется в нисходящем порядке, вторичное поле сортировки (b) — с помощью численной сортировки, а третичное поле (c) — с помощью сортировки, не зависящей от регистра:

     Array.sortOn (["a", "b", "c"], [Array.DESCENDING, Array.NUMERIC, Array.CASEINSENSITIVE]);
     

Примечание. Массивы fieldName и options должны иметь одно и то же количество элементов; в противном случае массив options игнорируется. Кроме того, варианты Array.UNIQUESORT и Array.RETURNINDEXEDARRAY могут выступать только в роли первого элемента массива. В противном случае они игнорируются.

Параметры

fieldName:Object — Строка, указывающая на поле, которое должно использоваться в качестве значения сортировки, или на массив, первый элемент которого представляет собой первичное поле сортировки, второй — вторичное поле сортировки и т.д.
 
options:Object (default = null) — Одно или несколько чисел или имен определенных констант, разделенные bitwise OR (|) и управляющие режимом сортировки. Параметр options может принимать следующие значения:
  • Array.CASEINSENSITIVE или 1
  • Array.DESCENDING или 2
  • Array.UNIQUESORT или 4
  • Array.RETURNINDEXEDARRAY или 8
  • Array.NUMERIC или 16

Подсказки для кодов включаются, если используется строковый формат флага (например, DESCENDING) вместо числового (2).

Возвращает
Array — Возвращаемое значение зависит от наличия переданных параметров:
  • Если выбрано значение 4 или Array.UNIQUESORT для параметра options и два и более сортируемых элементов имеют одинаковые поля сортировки, возвращается значение 0, а сам массив остается неизменным.
  • Если присвоить значение 8 или Array.RETURNINDEXEDARRAY параметру options, возвращается массив, отражающий результаты сортировки, а сам массив остается неизменным.
  • В противном случае не возвращается ничего, а массив изменяется, отражая порядок сортировки.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает пустой объект Array vegetables, который затем заполняется путем пяти вызовов метода push(). Каждый раз при вызове метода push() создается новый объект Vegetable. Для этого вызывается конструктор Vegetable(), который принимает объекты String (name) и Number (price). Пятикратный вызов метода push() с указанными значениями приводит к формированию следующего массива: [lettuce:1.49, spinach:1.89, asparagus:3.99, celery:1.29, squash:1.44]. После этого используется метод sortOn() с параметром name, создающий следующий массив: [asparagus:3.99, celery:1.29, lettuce:1.49, spinach:1.89, squash:1.44]. После этого снова вызывается метод sortOn() с параметром price, а также константами NUMERIC и DESCENDING. Он создает массив, отсортированный по числам в нисходящем порядке: [asparagus:3.99, spinach:1.89, lettuce:1.49, squash:1.44, celery:1.29].
var vegetables:Array = new Array();
vegetables.push(new Vegetable("lettuce", 1.49));
vegetables.push(new Vegetable("spinach", 1.89));
vegetables.push(new Vegetable("asparagus", 3.99));
vegetables.push(new Vegetable("celery", 1.29));
vegetables.push(new Vegetable("squash", 1.44));

trace(vegetables);
// lettuce:1.49, spinach:1.89, asparagus:3.99, celery:1.29, squash:1.44

vegetables.sortOn("name");
trace(vegetables);
// asparagus:3.99, celery:1.29, lettuce:1.49, spinach:1.89, squash:1.44

vegetables.sortOn("price", Array.NUMERIC | Array.DESCENDING);
trace(vegetables);
// asparagus:3.99, spinach:1.89, lettuce:1.49, squash:1.44, celery:1.29

class Vegetable {
    public var name:String;
    public var price:Number;

    public function Vegetable(name:String, price:Number) {
        this.name = name;
        this.price = price;
    }

    public function toString():String {
        return " " + name + ":" + price;
    }
}

Следующий код создает пустой объект Array records, который затем заполняется путем трех вызовов метода push(). При каждом вызове метода push() строки name, city и zip добавляются в объект records. Печать элементов массива производится с помощью циклов for. Первый цикл for выводит элементы на печать в том порядке, в каком они были добавлены. Второй цикл for выполняется после того, как объект records был отсортирован по имени и затем по городу с помощью метода sortOn(). Третий цикл for приводит к иным результатам, поскольку объект records сортируется еще раз сначала по городу, а затем по имени.

var records:Array = new Array();
records.push({name:"john", city:"omaha", zip:68144});
records.push({name:"john", city:"kansas city", zip:72345});
records.push({name:"bob", city:"omaha", zip:94010});

for(var i:uint = 0; i < records.length; i++) {
    trace(records[i].name + ", " + records[i].city);
}
// Results:
// john, omaha
// john, kansas city
// bob, omaha

trace("records.sortOn('name', 'city');");
records.sortOn(["name", "city"]);
for(var i:uint = 0; i < records.length; i++) {
    trace(records[i].name + ", " + records[i].city);
}
// Results:
// bob, omaha
// john, kansas city
// john, omaha

trace("records.sortOn('city', 'name');");
records.sortOn(["city", "name"]);
for(var i:uint = 0; i < records.length; i++) {
    trace(records[i].name + ", " + records[i].city);
}
// Results:
// john, kansas city
// bob, omaha
// john, omaha

Следующий код создает пустой объект Array users, который затем заполняется путем четырех вызовов метода push(). Каждый раз при вызове метода push() создается объект User с помощью конструктора User(). В число пользователей добавляются строка name и uint age. В результате получается набор массивов [Bob:3,barb:35,abcd:3,catchy:4].

Затем массив сортируется следующими способами:

  1. Только по имени, создавая массив [Bob:3,abcd:3,barb:35,catchy:4]
  2. По имени и с константой CASEINSENSITIVE, создавая массив [abcd:3,barb:35,Bob:3,catchy:4]
  3. По имени и с константами CASEINSENSITIVE и DESCENDING, создавая массив [catchy:4,Bob:3,barb:35,abcd:3]
  4. Только по возрасту, создавая массив [abcd:3,Bob:3,barb:35,catchy:4]
  5. По возрасту и с константой NUMERIC, создавая массив [Bob:3,abcd:3,catchy:4,barb:35]
  6. По возрасту и с константами DESCENDING и NUMERIC, создавая массив [barb:35,catchy:4,Bob:3,abcd:3]

Затем создается массив indices, которому присваиваются результаты сортировки по возрасту с использованием констант NUMERIC и RETURNINDEXEDARRAY. В результате появляется массив [Bob:3,abcd:3,catchy:4,barb:35], который впоследствии выводится на печать с помощью цикла for.

class User {
    public var name:String;
    public var age:Number;
    public function User(name:String, age:uint) {
        this.name = name;
        this.age = age;
    }

    public function toString():String {
        return this.name + ":" + this.age;
    }
}

var users:Array = new Array();
users.push(new User("Bob", 3));
users.push(new User("barb", 35));
users.push(new User("abcd", 3));
users.push(new User("catchy", 4));

trace(users); // Bob:3,barb:35,abcd:3,catchy:4

users.sortOn("name");
trace(users); // Bob:3,abcd:3,barb:35,catchy:4

users.sortOn("name", Array.CASEINSENSITIVE);
trace(users); // abcd:3,barb:35,Bob:3,catchy:4

users.sortOn("name", Array.CASEINSENSITIVE | Array.DESCENDING);
trace(users); // catchy:4,Bob:3,barb:35,abcd:3

users.sortOn("age");
trace(users); // abcd:3,Bob:3,barb:35,catchy:4

users.sortOn("age", Array.NUMERIC);
trace(users); // Bob:3,abcd:3,catchy:4,barb:35

users.sortOn("age", Array.DESCENDING | Array.NUMERIC);
trace(users); // barb:35,catchy:4,Bob:3,abcd:3

var indices:Array = users.sortOn("age", Array.NUMERIC | Array.RETURNINDEXEDARRAY);
var index:uint;
for(var i:uint = 0; i < indices.length; i++) {
    index = indices[i];
    trace(users[index].name, ": " + users[index].age);
}

// Results:
// Bob : 3
// abcd : 3
// catchy : 4
// barb : 35

splice

()метод 
AS3 function splice(startIndex:int, deleteCount:uint, ... values):Array

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Добавляет элементы в массив и удаляет элементы из массива. Этот метод изменяет массив, не создавая копии.

Примечание. Для переопределения этого метода в подклассе Array укажите для параметров значение ...args, как показано в примере:

     public override function splice(...args) {
       // your statements here
     }
     

Параметры

startIndex:int — Целое число, указывающее индекс элемента в массиве, откуда начинается вставка или удаление. Для указания позиции относительно конца массива можно использовать отрицательное число (например, -1 — это последний элемент массива).
 
deleteCount:uint — Целое число, указывающее количество удаляемых элементов. Это число включает элемент, указанный в параметре startIndex. Если значение параметра deleteCount не указано, метод удаляет все значения, начиная с элемента startIndex до последнего элемента в массиве. Если значение равно 0, элементы не удаляются.
 
... values — Необязательный список, состоящий из одного или нескольких значений, разделенных запятыми, которые вставляется в массив на позиции, указанной параметром startIndex. Если тип вставленного значения — Array, массив остается без изменений и вставляется как один элемент. Например, если соединить существующий массив из трех элементов с другим массивом из трех элементов, то в результирующем массиве будет только четыре элемента. Однако одним из элементов будет массив из трех элементов.

Возвращает
Array — Массив, содержащий элементы, удаленные из исходного массива.

Пример  ( Использование этого примера )

Следующий код создает объект Array vegetables с элементами [spinach, green pepper, cilantro, onion, avocado]. Затем вызывается метод splice() с параметрами 2 и 2, присваивающий cilantro и onion массиву со spliced. Массив vegetables содержит при этом элементы [spinach,green pepper,avocado]. Вторично вызывается метод splice() с параметрами 1, 0, и массив со spliced присваивает [cilantro,onion] в качестве второго элемента vegetables.
var vegetables:Array = new Array("spinach",
                 "green pepper",
                 "cilantro",
                 "onion",
                 "avocado");

var spliced:Array = vegetables.splice(2, 2);
trace(vegetables); // spinach,green pepper,avocado
trace(spliced);    // cilantro,onion

vegetables.splice(1, 0, spliced);
trace(vegetables); // spinach,cilantro,onion,green pepper,avocado


Учтите, что отслеживание cilantro и onion выполняется так, как если бы в vegetables было 5 элементов, хотя фактически в нем 4 элемента (а второй из них является другим массивом, содержащим два элемента). Чтобы добавить cilantro и onion по отдельности, необходимо использовать следующее:
 
var vegetables:Array = new Array("spinach",
                 "green pepper",
                 "cilantro",
                 "onion",
                 "avocado");
 
 var spliced:Array = vegetables.splice(2, 2);
 trace(vegetables); // spinach,green pepper,avocado
 trace(spliced);    // cilantro,onion
 
 vegetables.splice(1, 0, "cilantro", "onion");
 trace(vegetables); // spinach,cilantro,onion,green pepper,avocado

toLocaleString

()метод 
public function toLocaleString():String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает строку, представляющую элементы в заданном массиве. Каждый элемент в массиве, начиная с индекса 0 и заканчивая наибольшим индексом, преобразуется в сцепленную строку, разделенную запятыми. В рамках ActionScript 3.0 этот метод возвращает то же значение, что и метод Array.toString().

Возвращает
String — Строка с элементами массива.

Связанные элементы API

toString

()метод 
public function toString():String

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Возвращает строку, представляющую элементы в заданном массиве. Каждый элемент в массиве, начиная с индекса 0 и заканчивая наибольшим индексом, преобразуется в сцепленную строку, разделенную запятыми. Для указания пользовательского разделителя примените метод Array.join().

Возвращает
String — Строка с элементами массива.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает объект Array, преобразует значения в строки и сохраняет их в переменной vegnums с типом данных String.
var vegetables:Array = new Array();
vegetables.push(1);
vegetables.push(2);
vegetables.push(3);
vegetables.push(4);
vegetables.push(5);
var vegnums:String = vegetables.toString();
trace(vegnums+",6");
// 1,2,3,4,5,6

unshift

()метод 
AS3 function unshift(... args):uint

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Добавляет один или несколько элементов в начало массива и возвращает новую длину массива. Другие элементы массива смещаются с исходных позиций (с i на i+1).

Параметры

... args — Одно или несколько чисел, элементов или переменных, вставляемых в начало массива.

Возвращает
uint — Целое число, выражающее новую длину массива.

Связанные элементы API


Пример  ( Использование этого примера )

Следующий код создает пустой объект Array names. Строки Bill и Jeff добавлены с помощью метода push(), а строки Alfred и Kyle добавлены в начало names путем двух вызовов метода unshift().
var names:Array = new Array();
names.push("Bill");
names.push("Jeff");

trace(names); // Bill,Jeff

names.unshift("Alfred");
names.unshift("Kyle");

trace(names); // Kyle,Alfred,Bill,Jeff
Сведения о константе

CASEINSENSITIVE

Константа
public static const CASEINSENSITIVE:uint = 1

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Задает сортировку без учета регистра для методов сортировки класса Array. Эту константу можно использовать для параметра options в методе sort() или sortOn().

Значение этой константы равно 1.

Связанные элементы API

DESCENDING

Константа 
public static const DESCENDING:uint = 2

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Задает сортировку по убыванию для методов сортировки класса Array. Эту константу можно использовать для параметра options в методе sort() или sortOn().

Значение этой константы равно 2.

Связанные элементы API

NUMERIC

Константа 
public static const NUMERIC:uint = 16

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Задает числовую сортировку (вместо сортировки по символьной строке) для методов сортировки класса Array. Включение этой константы в параметр options приводит к тому, что методы sort() и sortOn() сортируют числа как числовые значения, а не как строки с числовыми значениями. Без константы NUMERIC сортировка обрабатывает каждый элемент массива как символьную строку и выдает результаты согласно порядку Юникода.

Например, если имеется массив значений [2005, 7, 35], а константа NUMERIC не включена в параметр options, отсортированный массив выглядит как [2005, 35, 7], но если константа NUMERIC включена, он выглядит следующим образом: [7, 35, 2005].

Эта константа применяется только к числам в массиве; она не применяется к строкам, которые содержат числовые данные (например, ["23", "5"]).

Значение этой константы равно 16.

Связанные элементы API

RETURNINDEXEDARRAY

Константа 
public static const RETURNINDEXEDARRAY:uint = 8

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Задает сортировку, которая возвращает массив, состоящий из индексов массивов. Эту константу можно использовать для параметра options в методе sort() или sortOn(). Таким образом, у вас есть доступ к нескольким представлениям элементов массива в то время, как исходный массив остается неизменным.

Значение этой константы равно 8.

Связанные элементы API

UNIQUESORT

Константа 
public static const UNIQUESORT:uint = 4

Язык версии: ActionScript 3.0
Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

Задает уникальное требование сортировки для методов сортировки класса Array. Эту константу можно использовать для параметра options в методе sort() или sortOn(). Эта уникальная возможность прекращает сортировку, если любые два сортируемых элемента имеют одинаковые значения.

Значение этой константы равно 4.

Связанные элементы API

ArrayExample.as

В следующем примере создается новый объект Array myArr без аргументов и с первоначальной длиной равной 0:
package {
    import flash.display.Sprite;

    public class ArrayExample extends Sprite {
        public function ArrayExample() {
            var myArr:Array = new Array();
            trace(myArr.length); // 0
        }
    }
}




[ X ]Почему по-английски?
Содержимое Справочника ActionScript 3.0 отображается на английском языке

Не все части Справочника ActionScript 3.0 переводятся на все языки. Если какой-то текстовый элемент не переведен, он отображается на английском языке. Например, компонент ga.controls.HelpBox не переведен ни на один из языков. Это значит, что в русской версии справки компонент ga.controls.HelpBox будет отображаться на английском языке.