multiply = (num1, num2) => {
    const isZero = ((num1 === '0') || (num2 === '0'));
    if (isZero) return '0';

    const buffer = initBuffer(num1, num2);/*               | Space (N + M) */

    multiplication(num1, num2, buffer)    /* Time O(N * M) */
    removeLeadingZero(buffer);            /* Time O(N + M) | Time O(N + M)*/

    return buffer.join('');               /* Time O(N + M) | Space O(N + M) */
}
Matrix
Time O(N * M) | Space O(N + M)
https://leetcode.com/problems/multiply-strings/
@param {string} num1
@param {string} num2
@return {string}