// array-to-json.js
const fs = require('fs');
let arr1 = require('./zh-CN')
/**
 * 将数组转换为 { key: value } 格式的 JSON 对象
 * @param {Array} array - 要转换的数组
 * @returns {Object} 生成的 JSON 对象
 */
function convertArrayToKeyValueJSON(array) {
  if (!Array.isArray(array)) {
    throw new Error('输入必须是数组类型');
  }

  const result = {};
  const seenKeys = new Set(); // 用于检测重复键

  array.forEach((item, index) => {
    const key = String(item); // 强制转换为字符串键
    
    if (seenKeys.has(key)) {
      console.warn(`⚠️ 警告: 键 "${key}" 在索引 ${index} 处重复，将被覆盖`);
    }
    
    seenKeys.add(key);
    result[key] = item; // 保留原始值类型
  });

  return result;
}

// 示例用法
const sampleArray = ['苹果', 123, true, null, '苹果'];

try {
  // 执行转换
  const jsonObject = convertArrayToKeyValueJSON(arr1);
  
  // 生成带格式化的 JSON 字符串
  const jsonString = JSON.stringify(jsonObject, null, 2);
  
  // 输出到控制台
  console.log('转换结果:');
  console.log(jsonString);
  
  // 写入文件（可选）
  fs.writeFileSync('output1.json', jsonString);
  console.log('\n✅ 已保存到 output1.json');

} catch (error) {
  console.error('❌ 发生错误:', error.message);
  process.exit(1);
}