una cosa del genere:

codice:
function calcoli(valore,numeri) {
	combinazioni = new Array();
	for (i=0; i<numeri.length; i++) {
		if (numeri[i] == valore) combinazioni.push(numeri[i]);
		for (j=i; j<numeri.length; j++) {
			var k = numeri[i]+numeri[j];
			if (k == valore) {
				combinazioni.push(numeri[i]+"+"+numeri[j]);
				if(numeri[i] != numeri[j]) combinazioni.push(numeri[j]+"+"+numeri[i]);
			}
		}
	}
	return (combinazioni.length == 0) ? "nessuna combinazione" : combinazioni;
}
numeri = Array(1,2,3,5,8);
risultato = calcoli(4,numeri);
trace(risultato);