将Javascript数组对象转换为大写

将Javascript数组对象转换为大写,javascript,arrays,Javascript,Arrays,如何将联系人数组转换为大写?将数组转换为大写后,我想按字母顺序显示全名,如图所示。或者有没有其他不转换成大写的方法来完成 您可以使用此选项将字符串转换为标题大小写: var contacts =[]; function getInfo() { var firstName = prompt("Enter first name"); var lastName = prompt("Enter last name"); var emailId = prompt("Enter E

如何将
联系人
数组转换为大写?将数组转换为大写后,我想按字母顺序显示全名,如图所示。或者有没有其他不转换成大写的方法来完成


您可以使用此选项将字符串转换为标题大小写:

var contacts =[];

function getInfo() {
    var firstName = prompt("Enter first name");
    var lastName = prompt("Enter last name");
    var emailId = prompt("Enter Email ID");
    var phoneNo = prompt("Enter Phone number");
    var fname, lname, email, phone;
    var person ={
        fname : firstName,
        lname : lastName,
        email : emailId,
        phone : phoneNo
    }
    contacts.push(person);  
}
参见示例用法:

function toTitleCase(str) {
    return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
}
因此,在代码中,您可以在保存person对象之前调用此函数

Alan Bong
Justin Weasel
Tom Curry

您可以使用多个函数的组合,一个用于大写,一个用于在每次将新联系人推入数组时进行排序:

var联系人=[
{ 
fname:'安德鲁',
lname:“麦格纳汉”
},
{ 
fname:‘paUla’,
lname:‘Ptrokva’
},
{ 
fname:'凯文',
名字:“哈格洛夫”
},
{ 
fname:‘卡米尔’,
lname:“dUpoIs”
},
{ 
fname:“AlbERt”,
名字:“斯旺森”
}
];
函数资本化(arr){
对于(变量i=0;ib.lname)返回1;
如果(b.lname>a.lname)返回-1;
返回0;
});
}
//将最新联系人推入阵列后,可以调用以下命令
//或者,您可以在输入时将输入大写,然后在contacts数组上运行sort函数
contacts=sortByLast(大写(contacts));
document.getElementById('sortedContacts')。innerHTML=JSON.stringify(联系人)

您的数组包含对象,而不是字符串。如果您想知道如何将名字和姓氏字符串转换为大写,那么重要的是您要问这个问题,而不是将“objects”转换为大写,因为这是不可能的。请相应地更新您的问题。还要注意那些
var fname,…
什么也不做。你声明它们,然后再也不使用它们。用于
person
对象的对象属性名“fname”等与变量
fname
等无关。在创建对象文字时,在将变量用作属性之前,不要声明变量。事实上,唯一要做的就是创建那些名称的本地
未定义的
变量,然后完全分开,在
person
对象上创建相同名称的属性。
Alan Bong
Justin Weasel
Tom Curry
person.firstName = toTitleCase(person.firstName);
person.lastName = toTitleCase(person.lastName);
contacts.push(person);