`
hideto
  • 浏览: 2650123 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ASCB阅读笔记五、Arrays

阅读更多
var array:Array = new Array();

array.push("val 1", "val 2");
array[array.length] = "val 3";
array.unshift("z");

trace(array.shift());
trace(array.pop());

for (var i:int = 0; i < array.length; i++) {
  trace(array[i]);
}

trace(ArrayUtilities.findMatchIndices(array, "val"));

array.splice(0, 2);
array.splice(1, 0, "r", "s", "t");

var list:String = "Peter Piper picked a peck of pickled peppers";

var words:Array = list.split(" ");

trace(words.join("|"));

var newWords:Array = words.concat();
var newWords2:Array = words.slice(0);
var newWords3:Array = ArrayUtilities.duplicate(words, true);

words.sort();
words.sort(Array.DESCENDING);
words.sort(Array.CASEINSENSITIVE);

var scores:Array = [10, 2, 2, 1, 1, 14, 5, 8, 20, 19, 6];
scores.sort(Array.NUMERIC);

var sortedScores:Object = scores.sort(Array.UNIQUESORT);
trace(sortedScores);
trace(scores);

var words:Array = ["tricycle", "relative", "aardvark", "jargon"];
var indices:Array = words.sort(Array.RETURNINDEXEDARRAY);
trace(words);
trace(indices);
for(var i:int = 0; i < words.length; i++) {
  trace(words[indices[i]]);
}

words.sort(Array.CASEINSENSITIVE | Array.DESCENDING);
words.reverse();

var cars:Array = new Array(  );
cars.push({make: "Honda",    year: 1997, color: "maroon"});
cars.push({make: "Chrysler", year: 2000, color: "beige"});
cars.push({make: "Mercedes", year: 1985, color: "blue"});
cars.push({make: "Fiat",     year: 1983, color: "gray"});
cars.push({make: "Honda",    year: 1992, color: "silver"});
cars.push({make: "Chrysler", year: 1968, color: "gold"});
cars.push({make: "Mercedes", year: 1975, color: "green"});
cars.push({make: "Fiat",     year: 1983, color: "black"});
cars.push({make: "Honda",    year: 2001, color: "blue"});
cars.push({make: "Chrysler", year: 2004, color: "orange"});
cars.push({make: "Mercedes", year: 2000, color: "white"});
cars.push({make: "Fiat",     year: 1975, color: "yellow"});
cars.sortOn(["year", "make"]);
cars.sortOn("year", Array.DESCENDING);

var bands:Array = ["The Clash",
                   "The Who",
                   "Led Zeppelin",
                   "The Beatles",
                   "Aerosmith",
                   "Cream"];
function bandNameSort(band1:String, band2:String):int
{
  band1 = band1.toLowerCase();
  band2 = band2.toLowerCase();
  if(band1.substr(0,4) == "the ") {
    band1 = band1.substr(4);
  }
  if(band2.substr(0,4) == "the ") {
    band2 = band2.substr(4);
  }
  if(band1 < band2) {
    return -1;
  }
  else {
    return 1;
  }
}
bands.sort(bandNameSort);

var numbers:Array = new Array();
for(var i:int=0;i<20;i++) {
  numbers[i] = i;
}
function randomSort(elementA:Object, elementB:Object):Number {
  return Math.random() - .5
}
numbers.sort(randomSort);

var scores:Array = [10, 4, 15, 8];
scores.sort(Array.NUMERIC);
trace("Minimum: " + scores[0]);
trace("Maximum: " + scores[scores.length - 1]);

var letters:Array = ["a", "b", "c", "d"];
var lettersPointer:Array = letters;
trace(letters == lettersPointer);    // Display: true

var letters1:Array = ["a", "b", "c", "d"];
var letters2:Array = ["a", "b", "c", "d"];
trace(letters1 == letters2);    // Display: false

var equivalent:Boolean = true;
for(var i:int = 0; i < letters1.length; i++) {
  if(letters1[i] != letters2[i]) {
    equivalent = false;
    break;
  }
}
trace(equivalent);    // Display: true
trace(ArrayUtilities.equals(letter1, letters2));    // Display: true

var letters1:Array = ["a", "b", "c", "d"];
var letters2:Array = ["b", "a", "d", "c"];
trace(ArrayUtilities.equals(letters1, letters2));
// Displays: false
trace(ArrayUtilities.equals(letters1, letters2, true));
// Displays: true

public static function equals(arrayA:Array, 
                              arrayB:Array,
                              bNotOrdered:Boolean):Boolean {

    // If the two arrays don't have the same number of elements,
    // they obviously are not equivalent.
    if(arrayA.length != arrayB.length) {
        return false;
    }

    // Create a copy of each so that anything done to the copies 
    // doesn't affect the originals.
    var arrayACopy:Array = arrayA.concat(  );
    var arrayBCopy:Array = arrayB.concat(  );

    // If the order of the elements of the two arrays doesn't 
    // matter, sort the two copies so the order of the copies 
    // matches when comparing.
    if(bNotOrdered) {
        arrayACopy.sort(  );
        arrayBCopy.sort(  );
    }

    // Loop through each element of the arrays, and compare them. 
    // If they don't match, delete the copies and return false.
    for(var i:int = 0; i < arrayACopy.length; i++) {
        if(arrayACopy[i] != arrayBCopy[i]) {
            delete arrayACopy;
            delete arrayBCopy;
            return false;
        }
    }

    // Otherwise the arrays are equivalent. 
    // So delete the copies and return true.
    delete arrayACopy;
    delete arrayBCopy;
    return true;
}

var members:Object = {a: "A", b: "B", c: "C"};

var members:Object = {};
members.a = "A";
members.b = "B";
members.c = "C";
trace(members.a);
trace(members["a"]);

var members:Object = new Object();
members.a = "A";
members.b = "B";
members.c = "C";

for (var m:String in members) {
  trace(members[m]);
}
分享到:
评论

相关推荐

    ActionScript ascb包

    ascb包,直接解压放在src目录下。其中具体用法,还是得找些文档

    FLEX的ASCB函数包

    通过ASCB包,可以在FLEX环境中对字符、数字、日期等进行各种快捷的函数处理。如字符转为日期等。

    ascb hardware card

    This manual describes the Goebel NIC, a test resource for exercising ASCB-D interface bus on Honeywell EPIC programs. This is a new generation of test equipment designed specifically for simulation.

    ascb.drawing.Pen 类

    但是大多数的图形用Graphics API还是很难画出的,AS3CBLibrary (http://www.rightactionscript.com/ascb) 提供了一个 ascb.drawing.Pen 类。Pen 类是Graphics 类的代理(包装)类。你可以构造一个新的Pen 实例然后...

    ascb.drawing.pen

    但是大多数的图形用Graphics API还是很难画出的,AS3CBLibrary (http://www.rightactionscript.com/ascb) 提供了一个 ascb.drawing.Pen 类。Pen 类是Graphics 类的代理(包装)类。你可以构造一个新的Pen 实例然后...

    安科瑞ASCB1系列智能微型断路器样本

    安科瑞ASCB1系列智能微型断路器样本,

    591 ASCB1系列智能微型断路器安装使用说明书V1.00-20220715

    安科瑞ASCB1系列智能微型断路器产品使用,安装说明书

    AS3CBLibrary

    AS3CBLibrary资源包,ascb包,各种as类

    flash actionscript3 as3游戏开发教程合集(2本经典合一)+AS3CBLibrary_ascb包.zip

    flash actionscript3 as3游戏开发教程合集(2本经典合一)+AS3CBLibrary_ascb包.zip

    flash as3.0游戏

    一款带有代码的flash小游戏,直接下载,马上可以打开,不用解压缩.

    ASP封装成DLL

    本文档告诉读者怎样将ASP封装成DLL,需要使用word2007打开文档。

    用VBS获取网页源代码.vbs

    ThisCharCode = AscB(MidB(vIn,i,1)) If ThisCharCode ; Then strReturn = strReturn & Chr(ThisCharCode) Else NextCharCode = AscB(MidB(vIn,i+1,1)) strReturn = strReturn & Chr(CLng(ThisCharCode) * &...

    鲜花网站建设

    if AscB(upfile_5xSoft_Stream.Read(1))&lt;&gt;AscB(MidB(Str,j,1)) then InString=0 Exit For end if next if InString&lt;&gt;0 then Exit Function end if next End Function Private Sub Class_Terminate form....

    全国所有银行简称.xlsx

    ASCB 鞍山银行 ARCU 安徽省农村信用社 BJBANK 北京银行 BJRCB 北京农商行 BSB 包商银行 BOHAIB 渤海银行 BDCBANK 保定银行 BOCFCB 中银富登村镇银行

    无组件ASP文件上传源代码

    if AscB(upfile_5xSoft_Stream.Read(1))&lt;&gt;AscB(MidB(Str,j,1)) then InString=0 Exit For end if next if InString&lt;&gt;0 then Exit Function end if next End Function Private Sub Class_Terminate form....

    html读出文本文件内容

    [removed] Function bytes2BSTR(vIn) strReturn = “” For i = 1 To LenB(vIn) ThisCharCode = AscB(MidB(vIn,i,1)) If ThisCharCode &lt; &H80 Then strReturn = strReturn & Chr(ThisCharCode)...

    一段采集程序代码

    @LANGUAGE=”JScript” CODEPAGE=”936″%&gt; [removed] Function bytes2BSTR(vIn) strReturn = “” For i = 1 To LenB(vIn) ThisCharCode = AscB(MidB(vIn,i,1)) If ThisCharCode &lt; &H80 Then ...

    百度小偷

    Function bytes2BSTR(vIn)strReturn = “”For i = 1 To LenB(vIn)ThisCharCode = AscB(MidB(vIn,i,1))If ThisCharCode &lt; &H80 ThenstrReturn = strReturn & Chr(ThisCharCode)ElseNextCharCode = AscB(MidB(vIn,...

    exe转16进制工具

    s = hex(ascb(midb(ff,i+1,1))) if len(s) s = "0" & s end if 'kk = kk & s kk(i) = s next make filename,join(kk,"") else document.getElementById("srcFile").focus msgbox "请选择要压缩的...

Global site tag (gtag.js) - Google Analytics