If you have an ES6 compliant browser you can use:
The difference between ascending and descending sort order is the sign of the value returned by your compare function:
var ascending = homes.sort((a, b) => Number(a.price) - Number(b.price));
var descending = homes.sort((a, b) => Number(b.price) - Number(a.price));
Here's a working code snippet:
var homes = [{_x000D_
"h_id": "3",_x000D_
"city": "Dallas",_x000D_
"state": "TX",_x000D_
"zip": "75201",_x000D_
"price": "162500"_x000D_
}, {_x000D_
"h_id": "4",_x000D_
"city": "Bevery Hills",_x000D_
"state": "CA",_x000D_
"zip": "90210",_x000D_
"price": "319250"_x000D_
}, {_x000D_
"h_id": "5",_x000D_
"city": "New York",_x000D_
"state": "NY",_x000D_
"zip": "00010",_x000D_
"price": "962500"_x000D_
}];_x000D_
_x000D_
homes.sort((a, b) => Number(a.price) - Number(b.price));_x000D_
console.log("ascending", homes);_x000D_
_x000D_
homes.sort((a, b) => Number(b.price) - Number(a.price));_x000D_
console.log("descending", homes);
_x000D_