javascript - 如何对包含 null 和未定义元素的数组使用分配函数?

标签 javascript arrays

当初始数组包含未定义的元素时,此代码效果很好:

var x = [];
x[0] = ["title","t1"];
var y = []; y[0] = []; y[0][3]="t3";

console.log(x);
console.log(y);

y.forEach((subarr, i) => {
  Object.assign(x[i], subarr);
});

console.log(x);

我应该更改什么才能使此代码适用于可能包含空元素和未定义元素的初始数组:

var x = [];
x[0] = ["title","t1"];
var y = []; y[0] = [null,undefined,null,"t3"];

console.log(x);
console.log(y);

y.forEach((subarr, i) => {
  Object.assign(x[i], subarr);
});

console.log(x);

我希望获得与第一个示例相同的结果,但初始数组可能包含 null 和未定义的元素。 预期结果:

[ [ "title", "t1", null, "t3" ] ]

最佳答案

您可以跳过 undefinednull 值。

var x = [["title", "t1"]],
    y = [[null, undefined, null, "t3"]];

y.forEach((subarr, i) => subarr.forEach((v, j) => {
    if (v === undefined || v === null) return;
    x[i] = x[i] || [];
    x[i][j] = v;
}));

console.log(x);

关于javascript - 如何对包含 null 和未定义元素的数组使用分配函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53457724/

相关文章:

javascript - vscode 扩展 - 如何记录击键

arrays - 如果数组来自源文件,则在 bash 中按索引访问数组无法正常工作

php - 重新格式化字符串数组中的数字 PHP

arrays - Postgres 不在数组中

Javascript多重 promise 不适用于q和请求中间

javascript - 使用FetchJsonP/Redux/React进行API调用时的错误处理

javascript - React Native,如何通过按下按钮将多个 TextInput 中的值获取到一个对象中?

javascript - 如何通过用户输入用javascript刷新页面N次?

python - Python 会改变我的字节串吗?

c++ - 使用指针数组作为方法的参数