JSFiddle - React, Tailwind, and code Playground

by mschock

HTML

<div id="output"></div>

JavaScript

var input = [1, 7, 3, 4];

function get_products_of_all_ints_except_at_index(input) {
    var productWithoutZeroes = 1,
        zeroCount = 0;
        output = [];
    for (var i = 0; i < input.length; i++) {
        if (input[i] === 0) {
            zeroCount++;
        } else {
            productWithoutZeroes *= input[i];
        }
    }
    for (var i = 0; i < input.length; i++) {
        if (zeroCount > 1) {
            output[i] = 0;   
        } else if (input[i] === 0) {
            output[i] = productWithoutZeroes;
        } else if (zeroCount === 1) {
            output[i] = 0;
        } else {
            output[i] = productWithoutZeroes / input[i];
        }
    }
    return output;
}

$('#output').html(get_products_of_all_ints_except_at_index(input).join(', '));