You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript对象数组返回方法求助:学生详情输出异常

问题分析

你的代码存在两个核心问题:

  1. studentDetails函数仅返回了学生的姓名,没有按照题目要求返回包含姓名和学号的数组。
  2. 后续处理逻辑错误地将返回的字符串(姓名)当作数组遍历,导致逐个输出姓名的每个字符,而非输出姓名和学号两个元素。

修正后的代码

function studentDetails(i) { 
    var classDetails = {
        classTeacher: 'Anjani',
        students: [{name: "Anjali", roll: "1"}, {name: "Bhavya", roll: "2"}, {name: "Neha", roll: "3"}]
    };
  
    // 返回包含姓名和学号的数组
    return [classDetails.students[i].name, classDetails.students[i].roll];
}

process.stdin.resume();
process.stdin.setEncoding("utf-8");

let remainder = '';
process.stdin.on('data', function (chunk) {
    let t = parseInt(chunk);
    let ans = studentDetails(t);
    // 遍历返回的数组,每行输出一个元素
    for(var i=0; i<ans.length; i++)
    {
        process.stdout.write(ans[i]+'\n');
    }
    process.exit();
});

验证说明

当输入为1时,函数会返回["Bhavya", "2"],遍历数组后会依次输出Bhavya和2,与示例输出一致。

内容的提问来源于stack exchange,提问作者Vicky Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 09:00:51