カテゴリー : JavaScript

[Mocha] before, beforeEach, after, afterEach の実行順番

「あれ? Mocha で before, beforeEach, after, afterEach の実行順番ってどういう順番だっけ?」となることが多かったので記事にしました。

mocha.js

実行順番は before, beforeEach, afterEach, after

結論から書くと、

  1. before
  2. beforeEach
  3. test
  4. afterEach
  5. after

の順番で実行されます。

Mocha のサンプルコード

以下、before, beforeEach, afterEach, after の実行順序を確認するための mocha のサンプルコードです。

describe('before test', function() {
  before(function() {
    console.log('before');
  });
 
  beforeEach(function() {
    console.log('beforeEach');
  });
 
  after(function() {
    console.log('after');
  });
 
  afterEach(function() {
    console.log('afterEach');
  });
 
  it('test', function() {
    console.log('test');
  });
});

何の処理がどこで呼び出されるのか、よく理解してテストコードを書いていきたいですね。

[JavaScript] 小数点以下の桁数を取得する方法

JavaScript で小数点以下の桁数を取得する方法をご紹介します。

JavaScript

続きを読む

[JavaScript] 指定した id, class 名を持つ全ての要素を削除する

JavaScript で指定した id もしくは class 名を持つ全ての要素を削除するメソッドをご紹介します。

jQuery は使わずに pure JavaScript で実装しています。

JavaScript

続きを読む

[JavaScript] 改行コード \r\n \r \n を半角スペースに置換する正規表現とスニペット

JavaScript で改行文字を半角スペースに置換する正規表現とスニペットをご紹介します。

JavaScript

続きを読む

Promise 参考記事まとめ [JavaScript/ECMASCript6]

JavaScript 標準仕様の ECMASCript6 (ES2015) の Promise について理解が定着していないので、よく読み返す記事を自分用にまとめました。

JavaScript

続きを読む

異なるバージョンの Moment.js と Moment Timezone で変数を使い回したら見事にバグった

最新バージョンの moment-timezone@0.5.5 で生成した moment object を、古いバージョンの moment@2.4.0 を使ってる method に引数で渡して、日付処理をおこなったら華麗にバグったというお話です。

Moment.js

続きを読む

[JavaScript] iframe で読み込み完了後に処理を実行するには onload イベントを使おう

iframe 内のコンテンツの読み込みが完了したら何か処理をさせたい場合 onload イベントを使うことで実現できます。

Moment.js

続きを読む

moment-timezone のバージョンが古くてサマータイムの切り替わりで日付処理がバグった

Moment Timezone の古いバージョンを使っていて、先日のサマータイムの終了日時 2016年11月6日(日)02時00分 PDT を境目に UTC から PDT/PST への変換がバグってしまう問題に遭遇しました。

結果的には、使っていた moment-timezone のバージョンが古かったので、バージョンを最新にしたことで解決しました。

Moment.js

続きを読む

[jQuery] カルーセルライブラリ slick.js の lazyLoad を理解する

jQuery のカルーセルライブラリ slick.js をそのまま使うと slick.js file の読み込みと .slick() method の実行が完了するまで、カルーセルのレイアウトにならず ul, li タグで囲んでいる画像が全て表示されてしまうという問題に直面しました。

jQuery

続きを読む

[JavaScript] Date.now と new Date().getTime() と +new Date のパフォーマンス比較

JavaScript の Date.now と new Date().getTime() と +new Date の実行時間を jsPerf で確認してみました。

Moment.js

続きを読む