中文偽春菜後援會論壇  

打印

[情報] 窺探 yaya 901版

窺探 yaya 901版

我們一直在用的 yaya,其內部版本是叫 500 版,位於 branch 目錄之中。
而位於 trunk 目錄中的開發版則叫做 901 版。

究竟有什麼新特性呢?我們來看一下。

最主要的新東西,就是連想配列,中文叫關聯式陣列,Associative Array in English。
“關聯陣列有時也稱為「雜湊」或「對應」,它會使用「索引鍵」而非數值索引來組織儲存的值。關聯陣列中的每個索引鍵都是唯一的字串,可用來存取儲存的值。關聯陣列是索引鍵與值配對的無順序集合。程式碼不應該寄望關聯陣列的索引鍵會有一定的順序。” --節錄自 Flash CS3 Help

建立一個連想配列就像建立一個配列:
_data=IHASH

在連想配列中放入資料:
_data['apple']='taste good'
_data['orange']='juicy'

注意左方方括號中的是一個字串(string),而不是數字(integer)。

把連想配列當作字串輸出時的效果:
-> apple=taste good,orange=juicy

當然,yaya也會提供一些有關連想配列的函式:
HASH_KEYS(_data)
將輸出連想配列的索引鍵輸出至普通配列:
-> IARRAY('apple','orange')

同樣的,把值輸出至普通配列:
HASH_VALUES(_data)
-> IARRAY('taste good','juicy')

也有尋找某一索引鍵是否存在的函式:
HASH_EXIST('orange',_data)
-> 1
HASH_EXIST('tree',_data)
-> 0

也有量度長度的函式:
HASH_SIZE(_data)
-> 2

也有讓字串轉變成連想配列的函式:
_i='a=1,b=2,c=3,d=4'
_data=HASH_SPLIT(_i,',','=')
// HASH_SPLIT(<原字串>,<配對分隔字>,<索引鍵/值分隔字>)



而另一個是將會在下一個500版出現的字串表達方式: Heredoc。
// Start of Heredoc mark are "<<'" and '<<"', must be in the end of line
// End of Heredoc mark are "'>>" and '">>', quote must match and must be in the start of line

_i=<<'
123
456
789
'>>


正在聽着:
水人的格言:
有仇不報非君子!
有水不灌非魔人!

萬事皆可萌,唯有情無價

TOP

忘記不能求檔的,編輯掉。。

我寫的函式參數很多都是 “xxx=111,yyy=222”這種形式的,現在分析參數只能用簡易陣列來分析
if "xxx" _in_ reference0 {
xxx = reference0[1,"xxx="];
xxx = xxx[0];
...
}
這樣……
太麻煩了 ><

heredoc也很方便,不用在每行末尾加“/“了

[ 本帖最後由 forjanezz 於 2009-9-23 00:52 編輯 ]

TOP

引用:
原帖由 forjanezz 於 2009-9-22 23:17 發表
忘記不能求檔的,編輯掉。。

我寫的函式參數很多都是 “xxx=111,yyy=222”這種形式的,現在分析參數只能用簡易陣列來分析
if "xxx" _in_ reference0 {
xxx = reference0[1,"xxx="];
xxx = xxx[0];
...
}
這樣……
太麻 ...
要試也無不可啦,只是不要放到人格中發佈就好。 yaya.Tc538-901-r296 (Test Only).7z (275.39 KB)


正在聽着:
水人的格言:
有仇不報非君子!
有水不灌非魔人!

萬事皆可萌,唯有情無價

TOP

哇……感恩!

TOP



當前時區 GMT+8, 現在時間是 2019-4-21 20:21

Processed in 0.017430 second(s), 10 queries, Gzip enabled.

清除 Cookies - 聯繫我們 - 中文偽春菜後援會 - Archiver - WAP - TOP - 界面風格