function combinations(arr, n, r) {
var data = [];
comb_util(arr, n, r, 0, data, 0);
}
function comb_util(arr, n, r, index_data, data, index_arr) {
if(index_data == r) {
console.log(data);
return;
}
if(index_arr >= n) {
return;
}
data[index_data] = arr[index_arr];
comb_util(arr, n, r, index_data + 1, data, index_arr + 1);
comb_util(arr, n, r, index_data, data, index_arr + 1);
}
var data = [1,2,3,4];
var n = data.length;
var r = 3;
combinations(data, n, r);