前端数据处理
【代码】前端数据处理。
·
对象处理
- 多字段(数字类型)排序
let arr = [
{name: 'jim', math: 85, english: 66, chinese: 36},
{name: 'tom', math: 78, english: 70, chinese: 87},
{name: 'lilei', math: 78, english: 89, chinese: 36},
{name: 'alice', math: 90, english: 20, chinese: 60},
{name: 'hanmei', math: 54, english: 90, chinese: 96},
]
arr.sort((a, b) => {
if(a.math !== b.math){
// a-b就是升序,先按照数学升序排
return a.math - b.math
} else if(a.english !== b.english) {
// b-a就是降序,再按照英语降序排
return b.english - a.english
}ele if(){
// 再按照语文降序排
return b.chinese - a.chinese
}
})
数组处理
- 定义固定长度的数组,内容待填充
new Array(count).fill(-1)
- 是否改变原数组
原字符串是不可改变的,字符串赋值
// 会改变原数组
arr.push(item1,item2,·····,itemx) 、arr.pop()
arr.unshift(item1,item2,·····,itemx) 、arr.shift()
arr.splice()
arr.reverse()
arr.sort()
arr.fill()
arr.copyWithin()
// 原字符串是不可改变的
var str = "hello";
str[1] = "W";
console.log(str) //"hello"
// 字符串赋值也是在内存中新开辟空间,大量拼接字符串可能有性能问题
var str = 'abc';
console.log(str); //abc
str = 'red';
console.log(str); //red
var str = '';
for(var i = 0; i<10000;i++){
str += i
}
console.log(str) //这个结果需要花费大量时间来显示,因为要不断开辟新的空间
字符串处理
- 数组用中括号下标的方式可以改数组,字符串不行
let arr = [1,2,3]
arr[2] = 5
console.log(arr) //[1,2,5]
let str = 'abc'
str[2] = 'x' // 只可以获取值'c',不能设置
console.log(str) // abc
- 字符串以什么开头,以什么结尾(startWith、endWith)
var str = "Hello world, welcome to the Runoob.";
var n = str.startsWith("Hello"); // true 或者false

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)