如何将函数应用于对象

时间:2017-09-15 11:28:33

标签: javascript arrays google-chrome

我的作业听起来像是:

计算机在Test.data中放置了两个带有随机字符串的数组。需要一个列表,其中包含a中的一个元素,然后是b中的一个元素,依此类推。

示例:

a: ['a', 'b', 'c']    
b: ['d', 'e']    
-> ['a', 'd', 'b', 'e', 'c']

我尝试了这段代码,但它只是替换了Test.data中的数据。

Test.data = function arry(a, b) {
const c = [];

for (let i = 0; i < Math.max(a.length, b.length); i++) {
    if (a[i] != undefined) {
        c.push(a[i]);
    }

    if (b[i] != undefined) {
        c.push(b[i]);
    }
}
}

错误是我如何将函数应用于对象,但我不知道如何解决它

2 个答案:

答案 0 :(得分:3)

我认为这是你正在尝试做的事情?

function arry(a, b) {
    const c = [];

    for (let i = 0; i < Math.max(a.length, b.length); i++) {
        if (a[i] != undefined) {
            c.push(a[i]);
        }

        if (b[i] != undefined) {
            c.push(b[i]);
        }
    }
    return c;
}

let alpha = ['a', 'b', 'c'];
let beta = ['d', 'e'];
Test.data = arry(alpha, beta)

答案 1 :(得分:1)

我试图清理你的代码,希望它有所帮助

var a = ['a', 'b', 'c'],
b = ['d', 'e'];

function Test(a, b)
{
    var c = [];

    for (var i = 0; i < Math.max(a.length, b.length); i++)
    {
        if (a[i] !== undefined)
        {
            c.push(a[i]);
        }

        if (b[i] !== undefined)
        {
            c.push(b[i]);
        }
    }
    console.log(c);
}

Test(a, b);