差分
この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
cheatsheet [2015/03/01 03:32] kimu_shu [連想配列] |
cheatsheet [2017/01/26 14:14] (現在) kimu_shu Page name changed from cheetsheet to cheatsheet |
||
---|---|---|---|
ライン 12: | ライン 12: | ||
===== 可変長配列 ===== | ===== 可変長配列 ===== | ||
- | ^ ^Ruby ^JavaScript ^Java ^ | + | ^ ^Ruby ^JavaScript ^CoffeeScript ^Java ^ |
- | |マニュアル |[[http://docs.ruby-lang.org/ja/2.1.0/class/Array.html|Ruby 2.1.0]]|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array|MDN]]| | | + | |マニュアル |[[http://docs.ruby-lang.org/ja/2.1.0/class/Array.html|Ruby 2.1.0]]|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Array|MDN]]|[[http://coffeescript.org/|CoffeeScript]]| | |
- | |型 |Array |Array |List<//type//> | | + | |型 |Array |Array ||List<//type//> | |
- | |依存性 |なし(組み込み型) |なし(組み込み型) |import java.util.* | | + | |依存性 |なし(組み込み型) |なし(組み込み型) ||import java.util.* | |
- | |生成 |Array.new([//size = 0//][, //value// = 0])\\ [//item1//, //item2//, ...]|new Array([//size// = 0])\\ new Array(//item1//, //item2//, ...)\\ [//item1//, //item2//, ...]|new ArrayList<//type//>()| | + | |生成 |Array.new([//size = 0//][, //value// = 0])\\ [//item1//, //item2//, ...]|new Array([//size// = 0])\\ new Array(//item1//, //item2//, ...)\\ [//item1//, //item2//, ...]||new ArrayList<//type//>()| |
- | |要素数 |//array//.length\\ //array//.size|//array//.length|//list//.size()| | + | |要素数 |//array//.length\\ //array//.size|//array//.length||//list//.size()| |
- | |要素参照 | //array//[//index//] ||//list//.get(//index//)| | + | |要素参照 | //array//[//index//] |||//list//.get(//index//)| |
- | |要素代入 | //array//[//index//] = value ||//list//.set(//index//, //value//)| | + | |要素代入 | //array//[//index//] = value |||//list//.set(//index//, //value//)| |
- | |末尾に追加 |//array//.push(//value//)\\ //array//<nowiki> << </nowiki>//value//|//array//.push(//value//)|//list//.add(//value//)| | + | |末尾に要素を追加 |//array//.push(//value//)\\ //array//<nowiki> << </nowiki>//value//|//array//.push(//value//)||//list//.add(//value//)| |
- | |先頭に挿入 | //array//.unshift(//value//) ||//list//.add(0, //value//) | | + | |先頭に要素を挿入 | //array//.unshift(//value//) |||//list//.add(0, //value//) | |
- | |末尾から削除|//array//.pop |//array//.pop() |//list//.remove(//list//.size() - 1)| | + | |末尾から要素を削除|//array//.pop |//array//.pop() ||//list//.remove(//list//.size() - 1)| |
- | |先頭から削除|//array//.shift |//array//.shift() |//list//.remove(0) | | + | |先頭から要素を削除|//array//.shift |//array//.shift() ||//list//.remove(0) | |
- | |すべて削除 |//array//.clear |なし |//list//.clear() | | + | |別の配列と連結 |//array1// + //array2//|//array1//.concat(//array2//)|| | |
+ | |すべて削除 |//array//.clear |なし ||//list//.clear() | | ||
+ | |要素を指定して削除|//array//.delete(//value//)\\ (合致する要素全てを削除)|なし\\ (indexOfと「添字を指定して削除」で代用)|| | | ||
+ | |添字を指定して削除|//array//.delete_at(//index//)|//array//.splice(//index//, 1)|| | | ||
+ | |各要素について実行|//array//.each {<nowiki>|</nowiki>//value//<nowiki>|</nowiki> ... }|なし\\ (「各添字について実行」で代用)|for //value// in //array//\\ ...| | | ||
+ | |各添字について実行|//array//.each_index {<nowiki>|</nowiki>//index//<nowiki>|</nowiki> ...}|for (//index// = 0;\\ //index// < //array//.length;\\ ++//index//)\\ { ... }|なし\\ (「各添字と要素について実行」で代用)| | | ||
+ | |各添字と要素について実行|なし\\ (「各添字について実行」で代用)|なし\\ (「各添字について実行」で代用)|for //value//, //index// in //array//\\ ...| | | ||
===== 連想配列 ===== | ===== 連想配列 ===== | ||
- | ^ ^Ruby ^JavaScript ^ | + | ^ ^Ruby ^JavaScript ^CoffeeScript ^ |
- | |マニュアル |[[http://docs.ruby-lang.org/ja/2.1.0/class/Hash.html|Ruby 2.1.0]]|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object|MDN]]| | + | |マニュアル |[[http://docs.ruby-lang.org/ja/2.1.0/class/Hash.html|Ruby 2.1.0]]|[[https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Object|MDN]]|[[http://coffeescript.org/|CoffeeScript]]| |
- | |型 |Hash |Object | | + | |型 |Hash |Object || |
- | |依存性 |なし(組み込み型) |なし(組み込み型) | | + | |依存性 |なし(組み込み型) |なし(組み込み型) || |
- | |生成 |Hash.new\\ {//key1// <nowiki>=></nowiki> //value1//, //key2// <nowiki>=></nowiki> //value2//, ...}|new Object\\ {//key1//: //value1//, //key2//: //value2//, ...}| | + | |生成 |Hash.new\\ {//key1// <nowiki>=></nowiki> //value1//, //key2// <nowiki>=></nowiki> //value2//, ...}|new Object()\\ {//key1//: //value1//, //key2//: //value2//, ...}|| |
- | |要素数 |//hash//.length\\ //hash//.size|Object.keys(//object//).length| | + | |要素数 |//hash//.length\\ //hash//.size|Object.keys(//object//).length|| |
- | |要素参照 |//hash//[//key//]\\ //hash//.fetch(//key//)|//object//[<nowiki>"</nowiki>//key//<nowiki>"</nowiki>]\\ //object//.//key//| | + | |要素参照 |//hash//[//key//]\\ //hash//.fetch(//key//)|//object//[<nowiki>"</nowiki>//key//<nowiki>"</nowiki>]\\ //object//.//key//|| |
- | |要素代入 |//hash//[//key//] = //value//\\ //hash//.store(//key//, //value//)|//object//[<nowiki>"</nowiki>//key//<nowiki>"</nowiki>] = //value//\\ //object//.//key// = //value//| | + | |要素代入 |//hash//[//key//] = //value//\\ //hash//.store(//key//, //value//)|//object//[<nowiki>"</nowiki>//key//<nowiki>"</nowiki>] = //value//\\ //object//.//key// = //value//|| |
+ | |各キーについて実行|//hash//.each_key {<nowiki>|</nowiki>//key//<nowiki>|</nowiki> ... }|for (//key// in //object//) { ... }|for //key// of //object//\\ ...| | ||
+ | |各要素について実行|//hash//.each_value {<nowiki>|</nowiki>//value//<nowiki>|</nowiki> ... }|なし\\ (「各キーについて実行」で代用)|なし\\ (「各キーと要素について実行」で代用)| | ||
+ | |各キーと要素について実行|//hash//.each {<nowiki>|</nowiki>//key//, //value//<nowiki>|</nowiki> ... }\\ //hash//.each_pair {<nowiki>|</nowiki>//key//, //value//<nowiki>|</nowiki> ... }|なし\\ (「各キーについて実行」で代用)|for //key//, //value// of //object//\\ ...| | ||
+ | |キーの配列を取得|//hash//.keys |なし(以下のように一度走査するしかない)\\ var r = [];\\ for (k in //object//) { r.push(k); }|なし(JSよりかは完結に書ける)\\ (k for k, v of //object//)\\ ※演算子の優先順位から、括弧が重要| | ||
+ | ===== バイナリデータバッファ(JavaScript固有) ===== | ||
+ | ^ ^JavaScript ^備考^ | ||
+ | |マニュアル|[[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer|MDN]]| | | ||
+ | |型 |ArrayBuffer | | | ||
+ | |依存性 |なし(組み込み型) | | | ||
+ | |生成 |new ArrayBuffer(//length//) |//length//はバイト数| | ||
+ | |サイズ |//arraybuffer//.byteLength |バイト数| | ||
+ | |コピー |//arraybuffer//.slice(//begin//[, //end//])|返却するバッファはコピーされた新規バッファ| | ||
- | ===== バイナリデータ配列(JavaScript固有) ===== | + | ===== バイナリデータビュー(JavaScript固有) ===== |
- | ^ ^JavaScript ^ | + | ^ ^JavaScript ^備考^ |
- | |マニュアル|[[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer|MDN]]| | + | |型 |TypedArray (Uint8Array/etc.)| | |
- | |型 |ArrayBuffer | | + | |マニュアル|[[https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray|MDN]]| | |
- | |依存性 |なし(組み込み型) | | + | |依存性 |なし(組み込み型) | | |
- | |生成 |new ArrayBuffer(//size//) | | + | |生成 |new TypedArray(//length//)\\ new TypedArray(//typedarray//)\\ new TypedArray(//arraybuffer//[, //byteoffset//[, //length//]])| | |
- | |サイズ取得|//arraybuffer//.byteLength| | + | |参照バッファ|//typedarray//.buffer | | |
- | |サイズ変更|不可 | | + | |サイズ |//typedarray//.byteLength |バイト数| |
- | |コピー |//arraybuffer//.slice(//begin//[, //end//])| | + | |::: |//typedarray//.length |要素数 | |
+ | |オフセット|//typedarray//.byteOffset |バイト数| | ||
+ | |部分配列取得|//typedarray//.subarray([begin[, end]])|バッファは共有するので注意| | ||
+ | |:::|//typedarray//.slice([begin[, end]])|新規バッファを作ってコピー| |