Jam*_*ler 4 coldfusion closures coldfusion-2016
我正在尝试使用ColdFusion 2016查询排序
我基于雷蒙德·卡姆登的阵列排序
http://www.raymondcamden.com/2012/08/14/Another-ColdFusion-10-Closures-Post/
<cfscript>
qryTest = QueryNew("ID,Name");
qryTest.AddRow([
{id=1,name="One"},
{id=2,name="Two"},
{id=3,name="Three"},
{id=4,name="Four"}
]);
qryTest.sort(function(a, b) {
return a.name > b.name;
});
writedump(qryTest);
</cfscript>
Run Code Online (Sandbox Code Playgroud)
这是一个错误还是我做错了?或者是排序成员函数不一样QuerySort()
Ray的例子是CF10 测试版.看到这个评论.在CF10 +版本中,比较器必须返回1,0或-1.
用这个.这样做a.name > b.name只需返回true/ false.你需要返回1/ -1.
<cfscript>
qryTest = QueryNew("ID,Name");
qryTest.AddRow([
{id=1,name="One"},
{id=2,name="Two"},
{id=3,name="Three"},
{id=4,name="Four"}
]);
qryTest.sort(function(a, b) {
return a.name > b.name ? 1 : -1;
});
writedump(qryTest);
</cfscript>
Run Code Online (Sandbox Code Playgroud)