私はアルファベット順にjavascriptを使用してリストをソートしようとしています。Javascript:jqueryを使わないでデータアイテムをアルファベット順にソート
私はすでにどれも、このようにjQueryを使って同様の機能きません:
$('.articles').append($('#articles-non-attached li'));
var alphabeticallyOrderedDivs = $('.articles li').sort(function(a, b) {
return String.prototype.localeCompare.call($(a).data('title').toLowerCase(), $(b).data('title').toLowerCase());
});
しかし、今、私はちょうどJavascriptを使用する必要があります。
は、これまでのところ私が持っている:
var stores_li = document.querySelectorAll('.store-list-item');
//stores_li.sort();
[].slice.call(stores_li).sort(function(a, b) {
var textA = a.getAttribute('data-title').toLowerCase()
var textB = b.getAttribute('data-title').toLowerCase()
return (textA < textB) ? -1 : (textA > textB) ? 1 : 0;
//return String.prototype.localeCompare.call(textA,textB);
});
<ul>
<li class="store-list-item" data-title="a">Test 1</li>
<li class="store-list-item" data-title="c">Test 3</li>
<li class="store-list-item" data-title="b">Test 2</li>
<li class="store-list-item" data-title="d">Test 4</li>
</ul>
問題が何であるか:
ここでは近代的な構文とメソッドを持つバージョンがありますか? – brk
アルファベット順のソートではありません。テスト1、テスト2、テスト3、テスト4が返されます。 しかし、テスト1、テスト3、テスト2、テスト4が返されます。 –