配列操作の比較表: Ruby, AppleScript, HyperCard

いやなブログ: 配列操作の比較表: Ruby, Python, JavaScript, Perl, C++
の AppleScript 版
HyperCard はふざけた丈け (配列が存在しない――単なる文字列)

Ruby (Array) AppleScript (List) HyperCard (Items)
a = [1, 2, 3] set a to {1, 2, 3}
copy {1, 2, 3} to a
{1, 2, 3} returning a
put "1,2,3" into a
a.length length of a
a's length
count every item of a
count a's every item
count items of a
count a's items
number of every item of a
number of a's every item
number of items of a
number of a's items
the number of items of a
a.empty? a = {} a is empty
a.push(x) set end of a to x
set a's end to x
copy x to end of a
copy x to a's end
x returning end of a
x returning a's end
put the itemDelimiter & x after a
put x after item (1 + the number of items of a) of a
a.unshift(x) set front of a to x
set a's front to x
copy x to front of a
copy x to a's front
x returning front of a
x returning a's front
put x & the itemDelimiter before a
a.pop function が必要

on pop(L)
if L's contents's length = 0 then return {}
copy L's contents's last item to popItem
copy L's contents's items 1 thru -2 to L's contents
return popItem
end pop

pop(a reference to a)
2 文に分けて

get last item of a
delete last item of a
a.shift function が必要

on shift(L)
if L's contents's length = 0 then return {}
copy L's contents's first item to shiftItem
copy L's contents's rest to L's contents
return shiftItem
end shift

shift(a reference to a)
2 文に分けて

get first item of a
delete first item of a
a.concat(b) set a to a & b
copy a & b to a
a & b returning a
put the itemDelimiter & b after a
put b after item (1 + the number of items of a) of a
a.clear set a to {}
copy {} to a
{} returning a
put empty into a
a.insert(i, x) set a to items 1 thru (i - 1) of a & x & items i thru end of a
copy items 1 thru (i - 1) of a & x & items i thru end of a to a
items 1 thru (i - 1) of a & x & items i thru end of a returning a
put x & the itemDelimiter before item i of a
a.delete(x) function が必要

on deleteitem of x from r
set temp to {}
repeat with i in r's contents
get i as item
if result is not x then set temp's end to result
end repeat
set r's contents to temp
end deleteitem

deleteitem of x from a reference to a
delete item (the number of items of char 1 to offset(the itemDelimiter & x & the itemDelimiter, the itemDelimiter & a & the itemDelimiter) - 1) of a of a
a.delete_at(i) set a to items 1 thru (i - 1) of a & items (i + 1) thru end of a
copy items 1 thru (i - 1) of a & items (i + 1) thru end of a to a
items 1 thru (i - 1) of a & items (i + 1) thru end of a returning a
delete item i of a
a.include?(x) x is in a offset(the itemDelimiter & x & the itemDelimiter, the itemDelimiter & a & the itemDelimiter) is not 0
a.index(x) the number of items of char 1 to offset(the itemDelimiter & x & the itemDelimiter, the itemDelimiter & a & the itemDelimiter)
a.first first item of a
a's first item
1st item of a
a's 1st item
item 1 of a
a's item 1
first item of a
item one of a
item 1 of a
a.last
a[-1]
last item of a
a's last item
item -1 of a
a's item -1
last item of a
a[i,l]
a.slice(i, l)
items i thru (i + l) of a
a's items i thru (i + l)
item i to i+l of a
a[i..j]
a.slice(i..j)
items i thru j of a
a's items i thru j
item i to j of a
a[i...j]
a.slice(i...j)
items i thru (j - 1) of a
a's items i thru (j - 1)
item i to j-1 of a
a.sort! sort items of a
a.each { |x|
...
}
repeat with x in a
...
end repeat
repeat with i = 1 to the nmber of items of a
put item i of a into x
...
end repeat
2010年06月09日(水) 05:29:41 Modified by ID:9IihpDzSDw




スマートフォン版で見る