List.createSorted method

This topic has not yet been rated - Rate this topic

Creates a live sorted projection over this list. As the list changes, the sorted projection reacts to those changes and may also change.

Syntax


var sortedListProjection = list.createSorted(sorter);

Parameters

sorter

Type: Function

A function that accepts two arguments. The function is called with elements in the list. It must return one of the following numeric values: negative if the first argument is less than the second, zero if the two arguments are equivalent, positive if the first argument is greater than the second.

This function must always return the same results, given the same inputs. The results should not depend on values that are subject to change. You must call notifyMutated each time an item changes. Do not batch change notifications.

Return value

Type: SortedListProjection

A sorted projection over the list.

Examples

The following code shows how to use this function.


var numArr = new Array(2, 4, 6, 9, 7, 5, 3, 1);
var list = new WinJS.Binding.List(numArr);
var sortedList = list.createSorted(descendingCompare);

var sorted = "";

for (i = 0; i < sortedList.length; i++) {
    sorted += sortedList.getItem(i).data;
}

var unsorted = "";
for (i = 0; i < list.length; i++) {
    unsorted += list.getItem(i).data;
}

function descendingCompare(first, second) {
    if (first == second)
        return 0;
    else if (first < second)
         return 1;
    else
         return -1;
}

// sorted is "97654321", unsorted is "24697531". 

Requirements

Namespace

WinJS.Binding

Library

Base.js

See also

List

 

 

Build date: 12/5/2012

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.