LoginSignup
2
2

More than 5 years have passed since last update.

変数の値のローテーション3パターン

Posted at

例えばa, b, c, d, eという複数の変数があったときに、その値をローテーションする方法です。もちろん2つ以上ならいくつでもできます。

方法① 一時変数

var x;
x = a, a = b, c = d, d = e, e = x;

xを一字的な変数として使用しています。
メリット:わかりやすい
デメリット:無駄な変数

方法② 配列

a = [b, b = c, c = d, d = e, e = a][0];

配列と代入を上手く使った方法です。
個人的にはこれが一番好きです。
メリット:無駄がない
デメリット:動作がわからないとわかりにくい

方法③ 分割代入(ES6)

[a, b, c, d, e] = [b, c, d, e, a];

ECMAScript6、JavaScript1.7で新たに使えるらしい機能のひとつです。
代入の左側を、配列やオブジェクトのように記述できます。
メリット:簡単でわかりやすい
デメリット:対応状況を考えるとまだ使えない

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2