JavaScript 中如何筛选出首字母为小写的字符串
JavaScript筛选以小写字母开头字符串的实现方法
你提供的原有代码是通过startsWith('A')筛选首字符为大写A的数组项,只需调整filter内的判断逻辑即可实现需求,以下是两种常用实现方案:
- 方案1:使用正则表达式判断(最简洁,兼容性好)
核心逻辑是用正则/^[a-z]/匹配字符串开头位置的小写英文字母,调整后的完整代码如下:
const arryStudent = [ {name: 'faizan',rollNo: 11,marks: 80}, {name: 'irfan',rollNo: 12,marks: 75}, {name: 'Abdullah',rollNo: 13,marks: 69}, {name: 'Asad',rollNo: 23,marks: 71}, {name: 'ali',rollNo: 14,marks: 71} ]; // 筛选name属性以小写字母开头的项 const startsWithLowercase = arryStudent.filter((student) => /^[a-z]/.test(student.name)); console.log(startsWithLowercase);
运行上述代码,输出结果为faizan、irfan、ali对应的三个对象,符合需求。
- 方案2:使用字符编码判断(无需正则的实现)
通过charCodeAt(0)获取首字符的ASCII编码,判断是否处于小写字母的编码范围(97-122),适合不想使用正则的场景:
const arryStudent = [ {name: 'faizan',rollNo: 11,marks: 80}, {name: 'irfan',rollNo: 12,marks: 75}, {name: 'Abdullah',rollNo: 13,marks: 69}, {name: 'Asad',rollNo: 23,marks: 71}, {name: 'ali',rollNo: 14,marks: 71} ]; const startsWithLowercase = arryStudent.filter((student) => { const firstCharCode = student.name.charCodeAt(0); return firstCharCode >= 97 && firstCharCode <= 122; }); console.log(startsWithLowercase);
两种方案运行效果完全一致,可根据自身编码习惯选择。
内容的提问来源于stack exchange,提问作者Faizan
相关产品推荐
相关产品推荐

