¿ÀÅäÇÖÅ°ÀÇ ±âº» °´Ã¼ µ¥ÀÌÅÍÀ¯ÇüÀº ¿¬°ü ¹è¿ÀÔ´Ï´Ù. ±×ÀÇ ÇàÀ§¸¦ Àç´ÜÇÒ ¼ö Àִ Ư¡ÀÌ ÀÖ½À´Ï´Ù. ±âº»°ªÀ¸·Î, {}
, []
, Object()
±×¸®°í Array()
°¡ »ý¼ºÇÑ ¸ðµç °´Ã¼´Â ´ÙÀ½ ¸Þ½îµå¸¦ Áö¿øÇÕ´Ï´Ù:
ºñÃßõ (»ç¿ëÀ» ±ÇÀåÇÏÁö ¾Ê½À´Ï´Ù):
°¢ ¸Þ½îµå ¸¶´Ù µ¿µîÇÑ ÇÔ¼ö°¡ ÀÖ½À´Ï´Ù. ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇÏ¸é ´Ù¸¥ °´Ã¼°¡ ±¸ÇöÇÑ ¸ÂÃã ÇàÀ§¸¦ ¿ìȸÇÒ ¼ö ÀÖ½À´Ï´Ù -- ÀÌ ÇÔ¼öµéÀº ²À ¿ìȸÀÇ ¸ñÀûÀ¸·Î¸¸ »ç¿ëÇϽñ⸦ ±ÇÀåÇÕ´Ï´Ù. È£ÃâÇÏ·Á¸é, ¸Þ½îµå À̸§ ¾Õ¿¡ "Obj"¸¦ ºÙÀÎ ´ÙÀ½ ¸ñÇ¥ °´Ã¼¸¦ ù ¹ø° ¸Å°³º¯¼ö·Î °Ç³×½Ê½Ã¿À. ¿¹¸¦ µé¾î:
array := [1, 2, 3] MsgBox % ObjMaxIndex(array) " = " array.MaxIndex()
Obj ÇÔ¼ö°¡ À߸øµÈ À¯ÇüÀÇ °´Ã¼ ¶Ç´Â °ªÀ¸·Î È£ÃâµÇ¸é, ºó ¹®ÀÚ¿À» µ¹·ÁÁÝ´Ï´Ù.
Çϳª ÀÌ»óÀÇ °ªÀ» ¼±Çü ¹è¿ ¾È¿¡ ÁÖ¾îÁø À§Ä¡¿¡ »ðÀÔÇÕ´Ï´Ù..
Object.InsertAt(Pos, Value1 [, Value2, ... ValueN])
Value1À» »ðÀÔÇÒ À§Ä¡. ¿¬ÀÌÀº °ªÀº Pos+1, Pos+2, µîµî¿¡ »ðÀԵ˴ϴÙ.
»ðÀÔÇÒ Çϳª ÀÌ»óÀÇ °ªµé. °ª ¹è¿À» »ðÀÔÇÏ·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö·Î theArray*
¸¦ °Ç³×½Ê½Ã¿À.
InsertAtÀº RemoveAt°ú »ó´ëÀûÀÔ´Ï´Ù.
°´Ã¼´Â ¿¬°ü ¹è¿À̹ǷÎ, Posµµ Value1 °ª°ú ¿¬°üµÇ´Â Á¤¼ö Å°ÀÔ´Ï´Ù. ÀÌÀü¿¡ Pos À§Ä¡¿Í ±× ¿À¸¥ÂÊ¿¡ ÀÖ´Â Ç׸ñµéÀº Á¤È®ÇÏ°Ô ¸Å°³º¯¼öÀÇ °¹¼ö¸¸Å ¿À¸¥ÂÊÀ¸·Î À̵¿ÇÕ´Ï´Ù. ±× °á°ú ¸î¸î °ªµéÀÌ ¼Ò½ÇµÉ ¼ö ÀÖ½À´Ï´Ù (Áï, ÀÌ °´Ã¼´Â Èñ¼Ò ¹è¿ÀÔ´Ï´Ù). ¿¹¸¦ µé¾î:
x := [] x.InsertAt(1, "A", "B") ; => ["A", "B"] x.InsertAt(2, "C") ; => ["A", "C", "B"] ; ¼º±ä/ÇÒ´çµÇÁö ¾ÊÀº ¿ø¼Ò´Â º¸Á¸µË´Ï´Ù: x := ["A", , "C"] x.InsertAt(2, "B") ; => ["A", "B", , "C"] x := ["C"] x.InsertAt(1, , "B") ; => [ , "B", "C"]
InsertAtÀº °´Ã¼ÀÇ Á¤¼ö Å°°¡ ¼±Çü ¹è¿ ¾ÈÀÇ À§Ä¡¸¦ ³ªÅ¸³»´Â °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±× °´Ã¼¿¡ ID³ª ÇÚµé °°ÀÌ ÀÓÀÇÀÇ Á¤¼ö Å°°¡ ´ã°Ü ÀÖÀ¸¸é, InsertAtÀº ¿øÄ¡ ¾Ê´Â ºÎÀÛ¿ëÀ» ¾ß±âÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ¿¹¸¦ µé¾î:
x := [], handleX := 0x4321, handleY := 0x1234 x.InsertAt(handleX, "A") MsgBox % x[handleX] ; A - okay x.InsertAt(handleY, "B") MsgBox % x[handleX] ; ºñ¾î ÀÖ½À´Ï´Ù MsgBox % x[handleX+1] ; ÀÌ°÷ÀÌ "B"ÀÇ »õ "À§Ä¡"ÀÔ´Ï´Ù.
InsertAtÀº ¹®ÀÚ¿À̳ª °´Ã¼ Å°¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ±×·¡¼ È¥ÇÕ Å° À¯ÇüÀÌ ´ã±ä °´Ã¼¿Í ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
¼±Çü ¹è¿¿¡¼ ÁÖ¾îÁø À§Ä¡·ÎºÎÅÍ Ç׸ñÀ» Á¦°ÅÇÕ´Ï´Ù.
Object.RemoveAt(Pos [, Length])
Á¦°ÅÇÒ °ªÀÇ À§Ä¡.
Á¦°ÅÇÒ °ªÀÇ ¹üÀ§ÀÇ ±æÀÌ. Pos
ºÎÅÍ Pos+Length-1
±îÁöÀÇ Ç׸ñÀÌ Á¦°ÅµË´Ï´Ù. »ý·«Çϸé, ÇϳªÀÇ Ç׸ñ¸¸ Á¦°ÅµË´Ï´Ù.
¸¸¾à Length°¡ »ý·«µÇ¸é, Pos¿¡¼ Á¦°ÅµÈ °ªÀÌ ¹ÝȯµË´Ï´Ù (¾øÀ¸¸é ºñ¾î ÀÖ½À´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é, °ªÀ» °¡Áø Ç׸ñÀÌ Á¦°ÅµÈ °³¼ö°¡ ¹Ýȯ °ªÀÔ´Ï´Ù. ÀÌ°ÍÀº Èñ¼Ò ¹è¿ÀÇ Length¿Í ´Ù¸£Áö¸¸, ¾ðÁ¦³ª 0ºÎÅÍLength (Æ÷ÇÔ) »çÀÌÀÔ´Ï´Ù.
RemoveAtÀº InsertAt¿¡ »ó´ëÀûÀÔ´Ï´Ù.
Pos ¿À¸¥ÂÊÀÇ ³ª¸ÓÁö Ç׸ñµéÀº ¿ÞÂÊÀ¸·Î Length ¸¸Å (¶Ç´Â »ý·«µÇ¸é 1¸¸Å) À̵¿ÇÕ´Ï´Ù. Á¦°ÅµÈ ¹üÀ§¿¡¼ ¾î¶² Ç׸ñµéÀº °ªÀÌ ¾ø´õ¶óµµ »ó°üÀÌ ¾ø½À´Ï´Ù. ¿¹¸¦ µé¾î:
x := ["A", "B"] MsgBox % x.RemoveAt(1) ; A MsgBox % x[1] ; B x := ["A", , "C"] MsgBox % x.RemoveAt(1, 2) ; 1 MsgBox % x[1] ; C
RemoveAtÀº ±× °´Ã¼ÀÇ Á¤¼ö Å°°¡ ¼±Çü ¹è¿¿¡¼ À§Ä¡¸¦ ³ªÅ¸³¾ °æ¿ì¿¡¸¸ »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ±× °´Ã¼ ¾È¿¡ ID³ª ÇÚµé °°ÀÌ ÀÓÀÇÀÇ Á¤¼öÅ°°¡ ÀÖ´Ù¸é, RemoveAtÀº ¿øÇÏÁö ¾Ê´Â ºÎÀÛ¿ëÀ» ¾ß±âÇÒ °¡´É¼ºÀÌ ³ô½À´Ï´Ù. ¿¹¸¦ µé¾î:
x := {0x4321: "A", 0x1234: "B"} MsgBox % x.RemoveAt(0x1234) ; B MsgBox % x[0x4321] ; ºñ¾î ÀÖÀ½ MsgBox % x[0x4321-1] ; A
RemoveAtÀº ¹®ÀÚ¿À̳ª °´Ã¼ Å°¿¡ ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù. ±×·¡¼ È¥ÇÕ Å° À¯ÇüÀÌ ´ã±ä °´Ã¼¿Í ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
¹è¿ÀÇ ³¡¿¡ °ªÀ» Ãß°¡ÇÕ´Ï´Ù.
Object.Push([ Value, Value2, ..., ValueN ])
»ðÀÔÇÒ Çϳª ÀÌ»óÀÇ °ª. °ª ¹è¿À» »ðÀÔÇÏ·Á¸é, ¸¶Áö¸· ¸Å°³º¯¼ö·Î theArray*
¸¦ °Ç³×½Ê½Ã¿À.
°¡Àå ¸¶Áö¸·À¸·Î »ðÀÔµÈ °ªÀÇ À§Ä¡, ¹è¿ÀÌ À½¼ö ÁöÇ¥¿¡ ¿ø¼Ò¸¦ °¡Áö°í ÀÖ´Ù¸é À½ÀÇ Á¤¼öÀÏ ¼ö ÀÖ½À´Ï´Ù.
¹è¿ÀÌ ºñ¾î ÀÖ°Å ¶Ç´Â ¿ÀÁ÷ ¹®ÀÚ¿À̳ª °´Ã¼ Å°¸¸ ´ã°Ü ÀÖ´Ù¸é ù ¹ø° °ªÀº À§Ä¡ 1¿¡ »ðÀԵ˴ϴÙ.
±×·¸Áö ¾ÊÀ¸¸é, ù ¹ø° °ªÀº Object.MaxIndex() + 1
¿¡ »ðÀԵ˴ϴÙ. ±× À§Ä¡°¡ À½¼ö ¶Ç´Â 0ÀÌ¶óµµ »ó°ü¾ø½À´Ï´Ù. ÀÌ À§Ä¡°¡ ¸¶À½¿¡ ¾Èµé°í °´Ã¼¿¡ À½¼ö Å°°¡ µé¾î ÀÖÀ» ¼ö ÀÖ´Ù¸é, ´ë½Å¿¡ Object.InsertAt(Object.Length() + 1, ...)
¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
¸¶Áö¸· ¹è¿ ¿ø¼Ò¸¦ Á¦°ÅÇÏ°í µ¹·ÁÁÝ´Ï´Ù.
Value := Object.Pop()
¹è¿ ¿ø¼Ò°¡ ¾ø´Ù¸é, ¹Ýȯ °ªÀº ºó ¹®ÀÚ¿ÀÔ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é, ´ÙÀ½°ú µ¿µîÇÕ´Ï´Ù:
Value := Object.RemoveAt(Object.Length())
Å°-°ª ½ÖÀ» °´Ã¼·ÎºÎÅÍ Á¦°ÅÇÕ´Ï´Ù.
Object.Delete(Key) Object.Delete(FirstKey, LastKey)
À¯È¿ÇÑ ´ÜÀÏ Å°.
À¯È¿ÇÑ ¹üÀ§ÀÇ Á¤¼ö³ª ¹®ÀÚÅ°. FirstKey <= LastKey. µÎ Å° ¸ðµÎ À¯ÇüÀÌ °°¾Æ¾ß ÇÕ´Ï´Ù.
Á¤È®ÇÏ°Ô ¸Å°³º¯¼ö°¡ Çϳª¸¸ ÀÖ´Ù¸é, Á¦°ÅµÈ °ªÀÌ ¹ÝȯµË´Ï´Ù (¾ø´Ù¸é ºó °ªÀ» µ¹·ÁÁÝ´Ï´Ù). ±×·¸Áö ¾ÊÀ¸¸é ¹Ýȯ °ªÀº ¹ß°ßµÇ°Å³ª Á¦°ÅµÈ Å°ÀÇ °³¼öÀÔ´Ï´Ù.
RemoveAt¿Í ´Ù¸£°Ô, Delete´Â Á¦°ÅÇÏÁö ¾ÊÀº Å°-°ª ½Ö¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê½À´Ï´Ù. ¿¹¸¦ µé¾î:
x := ["A", "B"] MsgBox % x.RemoveAt(1) ; A MsgBox % x[1] ; B x := ["A", "B"] MsgBox % x.Delete(1) ; A MsgBox % x[1] ; ºñ¾î ÀÖÀ½
MinIndex := Object.MinIndex() MaxIndex := Object.MaxIndex()
Á¤¼ö Å°°¡ Á¸ÀçÇϸé, MinIndex´Â °¡Àå ³·Àº °ªÀ» µ¹·ÁÁÖ°í MaxIndex´Â °¡Àå ³ôÀº °ªÀ» µ¹·ÁÁÝ´Ï´Ù. ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿À» µ¹·ÁÁÝ´Ï´Ù.
Length := Object.Length()
À§Ä¡ 1¿¡¼ ½ÃÀÛÇÏ¿© ¼±Çü ¹è¿ÀÇ ±æÀ̸¦ µ¹·ÁÁÝ´Ï´Ù; Áï, °´Ã¼ ¾È¿¡¼ °¡Àå ³ôÀº ¾çÀÇ Á¤¼ö Å°¸¦ µ¹·ÁÁÖ°í, ±×°Ô ¾ø´Ù¸é 0À» µ¹·ÁÁÝ´Ï´Ù.
MsgBox % ["A", "B", "C"].Length() ; 3 MsgBox % ["A", , "C"].Length() ; 3 MsgBox % {-10: 0, 10: 0}.Length() ; 10 MsgBox % {-10: 0, -1: 0}.Length() ; 0
°´Ã¼ÀÇ ¶Ç´Â °´Ã¼ ÇʵåÀÇ °¡¿ë ´É·ÂÀ» Á¶Á¤ÇÕ´Ï´Ù.
Object.SetCapacity(MaxItems) Object.SetCapacity(Key, ByteSize)
MaxItems | °´Ã¼°¡ ´ãÀ» ¼ö ÀÖ´ÂÅ°-°ª ½ÖÀÇ ÃÖ´ë °³¼ö. ÀÌ °ªÀ» ³Ñ¾î¼¸é ÀÚµ¿À¸·Î È®´ëµË´Ï´Ù. Å°-°ª ½ÖÀÇ ÇöÀç °³¼öº¸´Ù ÀÛÀ¸¸é, ´ë½Å¿¡ ÇöÀç °³¼ö°¡ »ç¿ëµÇ°í, »ç¿ëµÇÁö ¾Ê´Â °ø°£Àº ¸ðµÎ ÇØÁ¦µË´Ï´Ù. |
Key | À¯È¿ÇÑ Å°¸é ¸ðµÎ. |
ByteSize | ÇʵåÀÇ ¹®ÀÚ¿ ¹öÆÛÀÇ ¹ÙÀÌÆ® ´ÜÀ§·Î »õ Å©±â. ³Î Á¾·á ¹®ÀÚ´Â Á¦¿ÜÇÕ´Ï´Ù. Çʵ尡 Á¸ÀçÇÏÁö ¾ÊÀ¸¸é, »õ·Î »ý¼ºµË´Ï´Ù. ByteSize°¡ 0À̸é, ¹öÆÛ°¡ ÇØÁ¦µÇÁö¸¸ ºó Çʵå´Â Á¦°ÅµÇÁö ¾Ê½À´Ï´Ù. ByteSize°¡ ÇöÀç Å©±âº¸´Ù ÀÛÀ¸¸é, ÃÊ°úµÈ µ¥ÀÌÅÍ´Â Àß·Á ³ª°©´Ï´Ù; ±×·¸Áö ¾ÊÀ¸¸é ±âÁ¸ÀÇ ¸ðµç µ¥ÀÌÅÍ°¡ º¸Á¸µË´Ï´Ù. |
Returns | ¼º°øÇÏ¸é »õ °¡¿ë ´É·Â, ±×·¸Áö ¾ÊÀ¸¸é ºó ¹®ÀÚ¿À» µ¹·ÁÁÝ´Ï´Ù. |
MaxItems := Object.GetCapacity() ByteSize := Object.GetCapacity(Key)
°´Ã¼³ª °´Ã¼ ÇʵåÀÇ ÇöÀç °¡¿ë ´É·ÂÀ» µ¹·ÁÁÝ´Ï´Ù.
Ptr := Object.GetAddress(Key)
ÀÖ´Ù¸é, ÇʵåÀÇ ¹®ÀÚ¿ ¹öÆÛÀÇ ÇöÀç ÁÖ¼Ò¸¦ µ¹·ÁÁÝ´Ï´Ù.
Enum := Object._NewEnum()
»õ ¿°ÅÀÚ(enumerator)¸¦ µ¹·ÁÁÖ¾î ÀÌ °´Ã¼ÀÇ Å°-°ª ½ÖÀ» ¿°ÅÇÕ´Ï´Ù. ÀÌ ¸Þ½îµå´Â º¸Åë Á÷Á¢ È£ÃâµÇÁö ¾Ê°í, for-ȸµ¹ÀÌ ¾È¿¡¼ »ç¿ëµË´Ï´Ù.
Object.HasKey(Key)
Key°¡ Object ¾ÈÀÇ °ª (even "")¿¡ ¿¬°üµÇ¾î ÀÖÀ¸¸é ÂüÀ», ±×·¸Áö ¾ÊÀ¸¸é °ÅÁþÀ» µ¹·ÁÁÝ´Ï´Ù.
Clone := Object.Clone()
°´Ã¼ÀÇ ¾èÀº »çº»À» µ¹·ÁÁÝ´Ï´Ù.
Å°-°ª ½ÖÀ» °´Ã¼¿¡ ÀúÀåÇϰųª µ¤¾î¾¹´Ï´Ù.
ObjRawSet(Object, Key, Value)
ÀÌ ÇÔ¼ö·Î ½ºÅ©¸³Æ®´Â __Set ¸ÞŸ-ÇÔ¼ö¸¦ ¿ìȸÇÒ ¼ö ÀÖ½À´Ï´Ù. ÇÊ¿äÇÏÁö ¾ÊÀ¸¸é, ´ë½Å¿¡ Á¤»óÀûÀÎ ÇÒ´çÀ» »ç¿ëÇØ¾ß ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î: Object[Key] := Value
¸ÞŸ-ÇÔ¼ö¸¦ ¿ìȸÇÏ´Â °ÍÀÌ ¸ñÀûÀ̹ǷÎ, ¸Þ½îµå°¡ ¾Æ´Ï¶ó ÇÔ¼öÀÔ´Ï´Ù. ³»Àå ¸Þ½îµå¸¦ È£ÃâÇϸé ÀϹÝÀûÀ¸·Î __Call meta-ÇÔ¼ö°¡ È£ÃâµË´Ï´Ù.
Å°-°ª ½ÖÀ» °´Ã¼¿¡ »ðÀÔÇÕ´Ï´Ù. Á¤¼ö Å°°¡ ÁÖ¾îÁö¸é ÀÚµ¿À¸·Î ±âÁ¸ÀÇ Å°¸¦ Á¶Á¤ÇÕ´Ï´Ù.
Object.Insert(Pos, Value1 [, Value2, ... ValueN ]) Object.Insert(Value) Object.Insert(StringOrObjectKey, Value)
InsertÀÇ ÇàÀ§´Â ¸Å°³º¯¼öÀÇ °³¼ö ±×¸®°í À¯Çü¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù:
Insert´Â true¸¦ µ¹·ÁÁÝ´Ï´Ù. v1.1.21 ÀÌÈÄ¿¡¼, ¸Þ¸ð¸® ÇÒ´çÀÌ ½ÇÆÐÇÏ¸é ¿¹¿Ü°¡ ´øÁ®Áý´Ï´Ù. ÀÌÀü ¹öÀü¿¡¼´Â ±× °æ¿ì ºó ¹®ÀÚ¿À» µ¹·ÁÁÖ¾ú½À´Ï´Ù.
°´Ã¼·ÎºÎÅÍ Å°-°ª ½ÖÀ» Á¦°ÅÇÕ´Ï´Ù.
Object.Remove(FirstKey, LastKey)
RemoveÀÇ ÇàÀ§´Â ¸Å°³º¯¼öÀÇ °³¼ö¿Í À¯Çü¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù:
Object.Remove(Integer)
´Â Object.RemoveAt(Integer)
ó·³ ÇàÀ§ÇÕ´Ï´Ù.Object.Remove(Integer, "")
´Â Object.Delete(Integer)
ó·³ ÇàÀ§ÇÕ´Ï´Ù.Object.Remove(Integer1, Integer2)
´Â Object.RemoveAt(Integer1, Integer2 - Integer1 + 1)
ó·³ ÇàÀ§ÇÕ´Ï´Ù.Object.Remove()
´Â Object.Pop()
ó·³ ÇàÀ§ÇÕ´Ï´Ù.