zoukankan      html  css  js  c++  java
  • flex中的括号

    初学flex时,被里面四处乱飞的括号弄得有点头晕,尤其是一些不同于C,Java中用法的地方。碰到

      var ac:ArrayCollection = new ArrayCollection([{name:"foo",no:0},{name:"bar",no:1}]);

    这种兄弟仨一起出场的时候更是无措。

    仔细翻了翻文档,总结一下,顺便测试下Easy Google Syntax Highlighter插件:

    • 小括号( ):nothing new,就两个作用:改变表达式运算顺序,小学生都会的东西;传递函数参数,传统用法
    • 大括号{ }:as3 中,两个作用:代码块,还是传统;实例化Object类的对象(实例),如
      MXML中,用于嵌入内联的as代码或数据绑定(其实数据绑定也可以看作as代码),如
      中括号[ ]:as3中,两个作用:初始化数组,这点与C和Java用{ }不一样,很多误读就是这么产生的,如
    •  
      1 var arr:Array = ["foo","bar","foobar"];

      插入元数据标签(metadata tag)如Bindable,Embed,Effect等,最常见的就是用于绑定的Bindable,如

      又如以下代码在MyComponent组件上定义myClickEvent事件
       
      1 [Event(name="myClickEvent", type="flash.events.Event")]
      2 public class MyComponent extends UIComponent{
      3 //...
      4 }

      在MXML中部分元数据标签可使用<mx:Metadata>标签插入,(绑定用<mx:Binding>)作用与脚本相同,如以下代码定义textSelectedColor的样式

       
      1 <mx:Metadata>
      2 [Style(name="textSelectedColor",type="Number",format="Color")]
      3 </mx:Metadata>

      关于<![CDATA[ ]]>,这里的中括号与as3无关,是XML的标准语法,XML解析器会自动忽略CDATA里的内容,MXML同样遵守这一规则

    • 尖括号< >:姑且也算吧,没什么好说的,定义和关闭标签,标记语言(markup language)的身份标志

    回头看第一个例子就很简单了,最外层的( )为ArrayCollection的构造函数传递参数,ArrayCollection构造函数的参数为Array数组,这就是[ ]的作用,而该参数数组则包含由{ }实例化的两个对象

  • 相关阅读:
    oracle number数据类型
    codepage 和 charset
    嵌入式jetty的HTTP实现
    OpenCV For Java环境搭建与功能演示
    luogu P2783 有机化学之神偶尔会做作弊
    [国家集训队]稳定婚姻
    [SCOI2014]方伯伯运椰子
    [APIO2017]商旅
    luogu P1121 环状最大两段子段和
    [APIO/CTSC 2007]数据备份
  • 原文地址:https://www.cnblogs.com/tianlangshu/p/2472094.html
Copyright © 2011-2022 走看看