LANG SELRCT

コードを書く場所についてはこちら

2019年1月17日木曜日

2次元配列をソートしたい(文字列)


配列内の文字列をソートしたいでは
以下のような配列を昇順・降順に並べ替えました。
array = ["え", "あ", "い", "お", "い"]

今回は
以下のような2次元配列を昇順・降順に並べ替えてみます。
array = [["お","か"], ["う","き"], ["あ","く"], ["え","け"], ["い","こ"]]


2次元配列の各要素の0番目の要素で昇順・降順にしてみる

コード.gs
function str_sort2d(array) {
  array = [["お","か"], ["う","き"], ["あ","く"], ["え","け"], ["い","こ"]];
  var ascending = array.sort(sorting_asc);
  Logger.log(ascending);
  var descending = array.sort(sorting_desc);
  Logger.log(descending);
}

function sorting_asc(a, b){
  if(a[0] < b[0]){
    return -1;
  }else if(a[0] > b[0] ){
    return 1;
  }else{
   return 0;
  }
}

function sorting_desc(a, b){
  if(a[0] > b[0]){
    return -1;
  }else if(a[0] < b[0] ){
    return 1;
  }else{
   return 0;
  }
}


実行結果

Logger.log(ascending)は昇順の結果
Logger.log(descending)で降順の結果



補足

2次元配列の各要素の1番目の要素で昇順・降順にする場合は
[0]の箇所を[1]に変えます。