1. ホーム
  2. javascript

[解決済み] JavaScript 配列の項目を前に移動させる

2022-05-16 05:15:46

質問

配列に "role" . もし含まれていれば "role" を配列の先頭に移動させたい。

var data= ["email","role","type","name"];
if ("role" in data) data.remove(data.indexOf("role")); data.unshift("role")
data;

ここで、結果が出ました。

["role", "email", "role", "type", "name"]

どうすれば直せますか?

どのように解決するのですか?

配列をソートして、その値が "role" が他のすべての値より前に来て、他のすべての値が等しいことを指定できます。

var first = "role";
data.sort(function(x,y){ return x == first ? -1 : y == first ? 1 : 0; });

デモ http://jsfiddle.net/Guffa/7ST24/