// 测试性别转换修复效果 console.log('=== 测试性别转换修复 ==='); // 模拟修复后的getGenderText函数 function getGenderText(gender) { if (gender === 0) return '男' if (gender === 1) return '女' return '未填写' } // 测试数据 const testCases = [ { gender: 0, expected: '男', description: '用户选择男性' }, { gender: 1, expected: '女', description: '用户选择女性' }, { gender: null, expected: '未填写', description: '未选择性别' }, { gender: undefined, expected: '未填写', description: '性别未定义' }, { gender: 2, expected: '未填写', description: '无效性别值' } ]; console.log('\n性别转换测试结果:'); testCases.forEach((testCase, index) => { const result = getGenderText(testCase.gender); const status = result === testCase.expected ? '✅ 通过' : '❌ 失败'; console.log(`${index + 1}. ${testCase.description}`); console.log(` 输入: ${testCase.gender}`); console.log(` 期望: ${testCase.expected}`); console.log(` 实际: ${result}`); console.log(` 状态: ${status}\n`); }); // 模拟实际数据库数据(从之前查询结果) console.log('=== 实际数据库数据测试 ==='); const dbData = [ { name: 'stalker', gender: 0, education: '' }, ]; dbData.forEach((data, index) => { console.log(`参赛人 ${index + 1}:`); console.log(` 姓名: ${data.name}`); console.log(` 性别原始值: ${data.gender}`); console.log(` 性别显示: ${getGenderText(data.gender)}`); console.log(` 学历原始值: "${data.education}"`); console.log(` 学历显示: ${data.education || '未填写'}`); // 检查修复效果 if (data.gender === 0 && getGenderText(data.gender) === '男') { console.log(` ✅ 性别修复成功: 0 -> 男`); } if (data.gender === 1 && getGenderText(data.gender) === '女') { console.log(` ✅ 性别修复成功: 1 -> 女`); } console.log(''); }); console.log('=== 修复总结 ==='); console.log('1. 性别转换逻辑已修复:'); console.log(' - 0 (用户选择"男") -> 显示"男" ✅'); console.log(' - 1 (用户选择"女") -> 显示"女" ✅'); console.log(''); console.log('2. 学历显示问题:'); console.log(' - 数据库中学历为空字符串,显示"未填写"是正确的'); console.log(' - 如果用户确实选择了"本科",需要检查数据录入过程'); console.log(''); console.log('3. 建议:'); console.log(' - 重新测试小程序,验证性别显示是否正确'); console.log(' - 检查用户是否真的选择了学历,或者数据录入是否有问题');