该代码将原始数组中的每个元素遍历一次,并根据元素类型将其添加到相应的属性中。在这里,我们使用了isNaN()函数来检查一个元素是否为数字。如果是数字,则将其添加到result对象的number属性中;否则,将其添加到result对象的char属性中。最终,输出result对象即可得到所需的结果。
// 原始数组 const arr = ['1', 'a', '2', 'b', '3', 'c']; // 定义一个空对象,用于存储转换后的结果 const result = {}; // 遍历原始数组,将数字和字符分别存储到result对象中 for (let i = 0; i < arr.length; i++) { const element = arr[i]; // 判断当前元素是否为数字 if (!isNaN(element)) { // 如果是数字,将其添加到result对象的number属性中 if (!result.number) { result.number = element; } else { result.number += element; } } else { // 如果不是数字,将其添加到result对象的char属性中 if (!result.char) { result.char = element; } else { result.char += element; } } } console.log(result); // { number: '123', char: 'abc' }