我有问题用捷克名称排序数组.它适用于普通字符,但不适用于特殊字符.'Sb','St','Šk'; 特殊的Š应该在其他两个词之后,但它以不同的顺序结束.这是一个简单的代码.
var tmpArr = ['Sb', 'BE', 'De', 'CS', 'Au', 'Šk', 'De', 'St', 'Ci', 'št'];
function mySort(s1, s2) {
return s1.localeCompare(s2 ,'cz', {sensitivity: "variant"});
}
var sorted = tmpArr.sort(mySort);
console.log(tmpArr);
for(var i in sorted){
console.log(sorted[i]);
}
Run Code Online (Sandbox Code Playgroud)
这应该也适用于所有浏览器.
所以我正在玩JS中的链表并提出以下问题:
可以说,我们有一个数组和一个包含5000个元素的链表.我们想在索引10处插入新元素.数组方式非常简单.我们在给定索引处插入新元素,并将其余元素向前移动一个索引.所以我尝试使用链表进行此操作,最后得到以下结果:
从Nicholas Zakas获得链表的实现 并添加额外的方法addOnPosition(data,index).最后这里是代码:
function LinkedList() {
this._head = null;
this._length = 0;
}
LinkedList.prototype = {
constructor: LinkedList,
add: function(data) {
var node = {
data: data,
next: null
},
current;
if (this._head === null) {
this._head = node;
}
else {
current = this._head;
while (current.next) {
current = current.next;
}
current.next = node;
}
this._length++;
},
remove: function(index) {
if (index > -1 && index < this._length) {
var current = this._head,
previous,
i …
Run Code Online (Sandbox Code Playgroud)