在JavaScript中,对象的属性名是区分大小写的。这意味着当你创建一个对象时,你定义的属性名的大小写将决定如何访问该属性。在你的例子中,var a = {A:'张三',B:'李四'},你只能使用大写的'A'和'B'来访问这些属性。

如果你不能更改原始对象的定义,并且仍然想使用小写的键来访问大写键的值,那么你需要创建一个新的对象,该对象的键是小写的,并将原始对象的值复制到新对象中。例如:

var original = {A:'张三',B:'李四'}  
var newObj = {a: original.A, b: original.B}  
console.log(newObj.a);  // 输出 "张三"  
console.log(newObj.b);  // 输出 "李四"

但是请注意,这种方法只适用于这个特定的例子,并且如果你有多个属性需要转换,那么这种方法可能就不适用了。在那种情况下,你可能需要编写一个函数来处理这个问题。

以下是一个使用JavaScript编写的函数示例,它将一个包含大写键的对象转换为包含小写键的对象:

function convertKeysToLowerCase(obj) {  
  const newObj = {};  

  for (const key in obj) {  
    if (obj.hasOwnProperty(key)) {  
      newObj[key.toLowerCase()] = obj[key];  
    }  
  }  

  return newObj;  
}

你可以使用这个函数来转换包含大写键的对象,例如:

const original = { A: '张三', B: '李四' };  
const converted = convertKeysToLowerCase(original);  
console.log(converted.a);  // 输出 "张三"  
console.log(converted.b);  // 输出 "李四"

 

当然如果是个数组也是可以的,只要改造下代码

      convertKeysToLowerCase(obj,type='arr') {
        if(type == 'arr'){
          const newData = []
          obj.forEach((item,index)=>{
            const newObj = {};
            for (const key in item) {
              if (item.hasOwnProperty(key)) {
                if(key.toLowerCase() != '_xid'){
                  newObj[key.toLowerCase()] = item[key];
                }
              }
            }
            newData.push(newObj)
          })
          return newData;
        }else{
          const newObj = {};
          for (const key in obj) {
            if (obj.hasOwnProperty(key)) {
              if(key.toLowerCase() != '_xid'){
                newObj[key.toLowerCase()] = obj[key];
              }
            }
          }
          return newObj
        }
      }