3つの文字列の配列を特定の順序で並べ替えたいと思います。
本、車、ホイール。
これらの文字列は任意の順序で受け取ることができます。1つ以上の文字列が存在する可能性があります-最大3つ
1つ以上の文字列を受信した場合、文字列を次の正確な順序で並べ替えたいと思います。
ホイール、本、車
プロパティ名がnameであると仮定します。
私はこのようなことを試みました:
myitem.sort((a, b) => {
if(a.name === 'wheel')
return 1;
if(a.name === 'book' && b.name === 'car')
return 1;
return -1;
値の順序とその順序でオブジェクトを使用できます。デフォルト値では、指定されていない値を配列の開始または終了に移動できます。
var order = { wheel: 1, book: 2, car: 3, default: 1000 },
array = ['foo', 'car', 'book', 'wheel'];
array.sort(function (a, b) {
return (order[a] || order.default) - (order[b] || order.default);
});
console.log(array);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加