我有一个JS对象,带有另一个JS对象的内部数组。内部onw就像
function outerObj()
{
this.items = new Array();
this.clear = function () {
this.items = new Array();
}
function __item(v1, v2, v3, v4) {
this.Val_1 = v1;
this.Val_2 = v2;
this.Val_3 = v3;
this.Val_4 = v4;
}
this.add = function (vA, vB, vC, vD) {
this.items.push( new __item(vA, vB, vC, vD) );
}
...
}
通过SPServices getListItems()
调用加载数组,在结果XML上使用.each( . . . )
。结果是有序的(<OrderBy>
),但结果是常见的刺激:
1
10
11
2
21
3
42A
42B
我无法摆脱包含字母(这是真实世界物品的名称),而我想要排序
1
2
3
10
11
21
42A
42B
建议?
答案 0 :(得分:1)
答案 1 :(得分:1)
实际上,以利沙,它看起来像这样。
items.sort(function (v1, v2) {
/* algorythm here */
});
algorythm是我可以添加智能的地方,它知道数组是持有对象,而不是值,以及我可以真正检查我正在排序的属性。
实际上,我可以编写一个外部函数,并从匿名函数中调用它。
谢谢以利沙;这让我走上了正轨。
我在这里回答,以便我可以使用格式化答案的能力。但是以利沙应该得到这个信用。
顺便提一下,该函数需要返回负数,零或正数。返回的符号表示传入的两个参数之间的排序顺序。