var str = '李世民 男 30,赵匡胤 男 34,秦始皇 男 10,武瞾 女 40,刘邦 男 35,姬发 男 24,朱元璋 男 36,忽必烈 男 31,爱新觉罗·福临 男 7,曹丕 男 20,刘备 男 50,孙权 男 40,柴荣 男 33,李煜 男 19'; 按照年龄大小,从小到大排序
时间: 2024-02-14 17:06:15 浏览: 97
好的,我可以帮您解决这个问题。这里是我的解决方案:
```javascript
var str = '李世民 男 30,赵匡胤 男 34,秦始皇 男 10,武瞾 女 40,刘邦 男 35,姬发 男 24,朱元璋 男 36,忽必烈 男 31,爱新觉罗·福临 男 7,曹丕 男 20,刘备 男 50,孙权 男 40,柴荣 男 33,李煜 男 19';
var arr = str.split(',');
var newArr = arr.map(function(item) {
var arr = item.split(' ');
var age = parseInt(arr[2]);
return {
name: arr[0],
gender: arr[1],
age: age
};
});
newArr.sort(function(a, b) {
return a.age - b.age;
});
console.log(newArr);
```
这个程序会将给定的字符串按照年龄大小排序,并输出排序后的结果。具体来说,它会先将字符串按照逗号分隔符拆分成一个个人名和年龄的字符串,然后再将每个字符串按照空格分隔符拆分成姓名、性别和年龄三个属性。接着,程序会将每个人的属性封装成一个对象,并将所有对象存储到一个数组中。最后,程序会使用 JavaScript 的 `sort` 方法对这个数组进行排序,排序规则是按照对象的 `age` 属性从小到大排序。排序完成后,程序会输出排序后的结果。
注意,这个程序中使用了 JavaScript 的一些基本方法和语法,如果您不熟悉这些内容,可能需要先学习一下。
阅读全文