• ベストアンサー

Javascriptの配列の便利な処理

Javascriptの配列で以下のような処理は自分で作らないといけないのでしょうか? var csv = 'A,B,C,D'; var ary new Array(); ary = csv.split(','); 要素の有無 true/false ary.exists('A') 結果 true 要素の削除 ary.delete('A') 結果 ary = ['B', 'C', 'D'];

  • bazax
  • お礼率5% (12/228)

質問者が選んだベストアンサー

  • ベストアンサー
  • ANASTASIAK
  • ベストアンサー率19% (658/3306)
回答No.1

インスタンス化は不要。 var csv = 'A,B,C,D'; ary = csv.split(','); でOK

その他の回答 (1)

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.2

公開されているものですと、prototype.jsとか。 http://www.openspc2.org/JavaScript/Ajax/ref/prototype.js/ver1.4/ 配列中の要素の検索 indexOf 配列中の要素の削除 without が、用意されています。

関連するQ&A

  • JavaScriptで配列に配列を追加できません

    var array = [ ]; var add1 = ["a", "b"]; var add2 = ["c", "d"]; array.push(add1); array.push(add2); ----------------------------------------- 期待しているarrayの中身 [["a", "b"], ["c", "d"]] ----------------------------------------- 実際の実行結果 ["a", "b", "c", "d"] ----------------------------------------- どうすれば良いのでしょうか?

  • 配列から別の配列の要素を削除する方法

    ある配列array_aに、100件の文字列要素が格納されています。 別の配列array_bには、80件の文字列要素が格納されています。 array_aの要素、array_bの要素共に重複するものはありません。 array_b中に存在する要素はすべてarray_a中にも存在します。 array_aにあり、array_bにはない要素で構成されたarray_cの作り方を教えてください。 例えば $array_a=array("a","b","c","d","e","f","g"); $array_b=array("e","b","d"); なら、 $array_c=array("a","c","f","g") になります。 配列array_aとarray_bは、 $array_b=array("b","b","d"); であったり、 $array_a=array("a","a","b","c","d","e","f","g"); といった「重複する要素を含むパターン」はありません。要素はすべてユニークです。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • ネストされた配列からのCSV出力の方法

    はじめまして。 勉強中のRuby(2.0)で、 以下のようにCSVファイルの書式変換をしようとしています。 ■変換前 # 入力ファイル1(input1.csv) A, B, C, D A1,B1,C1,D1 A2,B2,C2,D2 A3,B3,C3,D3 # 入力ファイル2(input2.csv) B C ■変換後(output.csv) B, C, A, D B1,C1,A1,D1 B2,C2,A2,D2 B3,C3,A3,D3 ■変換内容 入力ファイル1に対して、入力ファイル2で指定された文字をヘッダーにもつ列を 順次先頭に移動していき、それを、出力ファイルとする。 ■経緯 いろいろ試行錯誤をしながら、以下のような配列(output_ary)を 作るところまではできたのですが、 これをcsvに書き出す術がわからずにおります。 (カッコやダブルコーテーションがついたままになったり、 改行がされなかったり..) (pp output_ary の結果) pp output_ary #=> [["B1","C1","A1","D1"], ["B2","C2","A2","D2"], ["B3","C3","A3","D3"], ["B4","C4","A4","D4"]] お手数ですが どなたかご教示ください。 もちろん、「上記 output_ary のようなモノを作らなくてもこうすればできるよ」というご回答でもOKです。 よろしくお願いいたします。

    • ベストアンサー
    • Ruby
  • Flash 配列

    Flashでcsvファイルを読み込みんでいます。 ▼csvファイル中身 a,あんぱん,100(改行) b,食パン,180(改行) c,カリーパン,120(改行) ▼AS --------------------------------------------------------- var abc = new LoadVars(); var itemlist:Array = new Array(); abc.onData = function(data) { itemlist = data.split("\r\n"); if (itemlist[itemlist.length-1].length == 0) { itemlist.pop(); } for (var i:Number = 0; i<itemlist.length; i++) { itemlist[i] = itemlist[i].split(","); } } abc.load("book1.csv"); --------------------------------------------------------- 上記のASで読み込んだcsvファイルのデータを解析しています。 trace(itemlist[1][1]) で「食パン」を取り出したり出来ています。 ここで、 あんぱん,食パン,カリーパン と、3つの要素を持つ配列を作りたいのですが、 どうすればよいのでしょうか? pushやsliceを使用したのですが無知な為うまくいきませんでした (T_T;)

  • JavaScriptの配列について

    var old_array = Array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '<', '#', '/', '>', '%', '.', '*', '0', '!', '?', ':', '=', '|'); var new_array = Array('b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '<', '#', '/', '>', '%', '.', '*', '0', '!', '?', ':', '=', '|'); のような配列があり、 abcと入力するとbcd DEFと入力するとEFG 012と入力すると!23 というようなものを作りたいのですがどうすればいいでしょうか。

  • 連想配列をループで作成するには

    $ary1 = array("a","b","c"); $ary2 = array("あ","い","う"; から、以下の$aryを作成したいのですが、 ループして、連想配列を作るにはどうしたらよいのでしょうか? $ary = ( "a" => "あ", "i" => "い", "u" => "う", );

    • ベストアンサー
    • PHP
  • 2つの配列を1つにするには?

    var listWords1 = new Array ("a","b","c","d"); var listWords2 = new Array ("e","f"); // という2つの配列を下のような一つの配列にするにはどうすればいいですか? var listWords3 = new Array ("a","b","c","d","e","f"); 試しに var listWords3 = new Array(); listWords3 = listWords1 + listWords2 などとやってみましたがやっぱりダメでした。(^^; またもやド素人の質問でごめんなさい。自分なりに様々なキーワードでgoogleしているのですが、基本的なことすぎるのか、なかなか答えをヒットすることができません。私のような初心者がJavaScriptを基礎の基礎から勉強できるサイトがありましたら、併せてご紹介いただけませんでしょうか?よろしくお願いいたします。m(_ _)m

  • 配列について

    var myarray=new Array(); myarray[0]="a"; myarray[1]="b"; myarray[2]="c"; myarray[3]="b"; myarray[4]="a"; myarray[5]="d"; のような配列があります。ここから重複しないようにa,b,c,dだけを抜き出すのにはどのようにJavascriptで書いたらよいのでしょうか。 よろしくお願いします。

  • 配列(int)要素同士の合計、割り算

    配列(int)要素同士の合計、割り算は、どうやってするのでしょうか? ■元データ Array a  (   [2] => 2   [1] => 4   [3] => 1 ) Array b (   [1] => 2   [2] => 2   [3] => 1 ) ■導きたい結果1 … キーが同じ場合に、aとbの合計したい Array c (   [1] => 6   [2] => 4   [3] => 2 ) ■導きたい結果2 … キーが同じ場合に、aをcで割りたい(そして、✕100・四捨五入したい) Array d (   [1] => 67 4/6=0.666   [2] => 50 2/4   [3] => 50 1/2 )

    • ベストアンサー
    • PHP
  • 不規則な配列を読む方法

    質問です。 以下のようなcsvファイルを読み込む際に a , b , c d , e , f , g h , i , j k , l , m , n , o <プログラム> var data1 = new Array(); var data2 = new Array(); var data3 = new Array(); var i = 0; do{ data1[i] = objTxt.ReadLine(); data2[i] = data1[i].split(","); data3[i] = Array(data2[i][0] ,data2[i][1] ,data2[i][2] ,data2[i][3] ,data2[i][4]); i = i + 1; }while(!objTxt.AtEndOfLine) といった具合に読んでしまうと、data2[0][4]など ないところのデータまで無理矢理よんでしまうことになります。 undefinedと表示され、使うぶんには困らないのですが、 うまく必要な場所までよむことって可能でしょうか? つまり上の例だとdata2[0][2]まで、次の行はdata2[1][3]まで といった具合です。 もし、方法がありましたら、どなたかお教え願います。