小白做毕设——js学习概览

菜鸟教程:https://www.runoob.com/js/js-tutorial.html

JS

对象操作

  • 对象增删改查
    • 创建对象 let obj = {}
    • 新增属性 obj.a = 1
    • 修改属性 obj.a = ‘a’
    • 查询属性 obj.a
    • 删除属性 delete obj.a
  • 其他操作
    • obj[a] = 1
    • Object.assign() // 深拷贝 ? 浅拷贝
    • let { name } = user
    • **?. ** b = a?.name a 是 undefined 或者 null b 不报错

image.png

  • ?? b = a ?? c a 是 undefined 或者 null 则赋值 c 给 b
  • || b = a || c a 是 undefined 或者 null 则取 c
  • ??= b ??= a 左侧是 undefined 或者 null 则取右侧的值
  • 循环对象属性 for key in obj Object.keys(obj)

image.png
数组操作

  • 数组的增删改查
    • 创建数组 let arr = []
    • 新增元素
      • arr[0] = 1 arr[2] = 3
      • push()
      • unshift()
    • 删除元素
      • splice()
      • pop()
      • shift()
    • 修改元素 arr[index] = 1
    • 查询元素 arr[index]
    • 截取数组 slice()
    • 合并数组 concat()
    • 字符串变数组 split()
    • 数组变字符串 join() 默认使用’,'号分割
    • 排序 sort() [有坑] [1,2,10] -> [1,10,2] **.sort((a,b) => a-b) 正序 **
    • 倒序 reverse() ** .sort((a,b) => b-a) 倒序**
    • 获取元素序号 indexOf() lastIndexOf()
    • [神器] filter() 可以筛选和删除元素
      • let newArr = users.filter(v => v.name !== ‘李四’ && v.name !== ‘王二’) // 删除数组的指定元素 是不是很舒服
    • [神器] find()
    • [神器] map() [1,2,3].map(v => v *2) [{name: ‘a’}, {name:b}].map(v => v.name)
    • forEach([item], [index])
    • reduce
      • 语法:arr.reduce(function(prev,cur,index,arr){…}, init);
      • prev 累计器累计回调的返回值,表示上一次调用回调时的返回值,或者初始值 init
      • cur 表示当前正在处理的数组元素
      • index 表示当前正在处理的数组元素的索引
      • arr 表示原数组
      • init 初始值
      • arr = [1,2,3] let sum = arr.reduce((pre, cur) => pre + cur)
let names =['a', 'b', 'c', 'a', 'b']
let res = names.reduce((all, cur) => {
  console.log(all, cur)
  if (cur in all) {
    all[cur]++;
  } else {
    all[cur] = 1;
  }
  return all
}, {})

JSON - 数据传输的格式
https://www.json.cn/

  • 标准的 JSON
    • json 对象 {}
    • json 数组 []
  • json 数据格式: { “name”: “张三”, “age”: 23, “man”, true, “children”: [ { “name”: “张小宝”, “age”: 20 } ]}
  • 11
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值