関数

作成日:2013-01-26
最終更新日:

オライリーの JavaScript 第6版を図書館から借りて、 いろいろ調べている。 8 章の関数は知らないので、少し調べてみた。

クロージャ

クロージャの理解が必要である。

  let scope = "global scope";       
  function checkscope() {           
    let scope = "local scope";     
    function f() {return scope; }  
    return f();
  }
  checkscope()                       // ==> "localscope"

無名関数式も使える。特に sort は順番を決めるうえで大切だ。

  let a = new Array(800, 108, 1003, 50000); 
  a.sort();      // 1003, 108, 50000, 800 辞書式。
  a.sort(function(a, b) {
    return a - b;
  });             // 108, 800, 1003, 50000 数値順

大文字と小文字を区別せずにソートしたいときは、toLowerCaseを使う。

  a = ['formiko', 'Besteto', 'kato', 'Hundo'] // エスペラントでそれぞれ、アリ、虫、ネコ、イヌ
  a.sort(); // ['Besteto', 'Hundo', 'formiko', 'kato'] 大文字小文字を区別
  a.sort(function(s, t) {
    let a = s.toLowerCase();
    let b = t.toLowerCase();
    if (a < b) return -1;
    if (a > b) return  1;
    return 0;
  });             // ['Besteto', 'formiko', 'Hundo', 'kato']

まりんきょ学問所JavaScript 手習い > 関数


MARUYAMA Satosi