• 前端JavaScript入门到精通,javascript核心进阶ES6语法、API、js高级等基础知识和实战 —— JS进阶(二)


    思维导图

    构造函数&数据常用函数

    一、深入对象

    1.1创建对象三种方式

    1.2 构造函数

    1.3实例成员&静态成员

    二、内置构造函数

    为什么简单数据类型也有方法?

    基本数据类型包装成复杂数据类型

    2.1 Object

    2.2 Array

    reduce()

    第二个参数(初始值)不能省略,不然自动取第一个数组对象,但要累加的是数组对象的属性。

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <script>
    11. const arr = [{
    12. name: '张三',
    13. salary: 10000
    14. }, {
    15. name: '李四',
    16. salary: 10000
    17. }, {
    18. name: '王五',
    19. salary: 20000
    20. },
    21. ]
    22. // 涨薪的钱数 10000 * 0.3
    23. // const money = arr.reduce(function (prev, item) {
    24. // return prev + item.salary * 0.3
    25. // }, 0)
    26. const money = arr.reduce((prev, item) => prev + item.salary * 0.3, 0)
    27. console.log(money)
    28. script>
    29. body>
    30. html>

    find()

    every()

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <script>
    11. // const arr = ['red', 'blue', 'green']
    12. // const re = arr.find(function (item) {
    13. // return item === 'blue'
    14. // })
    15. // console.log(re)
    16. const arr = [
    17. {
    18. name: '小米',
    19. price: 1999
    20. },
    21. {
    22. name: '华为',
    23. price: 3999
    24. },
    25. ]
    26. // 找小米 这个对象,并且返回这个对象
    27. // const mi = arr.find(function (item) {
    28. // // console.log(item) //
    29. // // console.log(item.name) //
    30. // console.log(111)
    31. // return item.name === '华为'
    32. // })
    33. // 1. find 查找
    34. // const mi = arr.find(item => item.name === '小米')
    35. // console.log(mi)
    36. // 2. every 每一个是否都符合条件,如果都符合返回 true ,否则返回false
    37. const arr1 = [10, 20, 30]
    38. const flag = arr1.every(item => item >= 20)
    39. console.log(flag)
    40. script>
    41. body>
    42. html>

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <div>div>
    11. <script>
    12. const spec = { size: '40cm*40cm', color: '黑色' }
    13. //1. 所有的属性值回去过来 数组
    14. // console.log(Object.values(spec))
    15. // 2. 转换为字符串 数组join('/') 把数组根据分隔符转换为字符串
    16. // console.log(Object.values(spec).join('/'))
    17. document.querySelector('div').innerHTML = Object.values(spec).join('/')
    18. script>
    19. body>
    20. html>

    from()

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <ul>
    11. <li>1li>
    12. <li>2li>
    13. <li>3li>
    14. ul>
    15. <script>
    16. // Array.from(lis) 把伪数组转换为真数组
    17. const lis = document.querySelectorAll('ul li')
    18. // console.log(lis)
    19. // lis.pop() 报错
    20. const liss = Array.from(lis)
    21. liss.pop()
    22. console.log(liss)
    23. script>
    24. body>
    25. html>

    2.3 String

    subString()

    startWith()

    includes()

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <script>
    11. //1. split 把字符串 转换为 数组 和 join() 相反
    12. // const str = 'pink,red'
    13. // const arr = str.split(',')
    14. // console.log(arr)
    15. // const str1 = '2022-4-8'
    16. // const arr1 = str1.split('-')
    17. // console.log(arr1)
    18. // 2. 字符串的截取 substring(开始的索引号[, 结束的索引号])
    19. // 2.1 如果省略 结束的索引号,默认取到最后
    20. // 2.2 结束的索引号不包含想要截取的部分
    21. // const str = '今天又要做核酸了'
    22. // console.log(str.substring(5, 7))
    23. // 3. startsWith 判断是不是以某个字符开头
    24. // const str = 'pink老师上课中'
    25. // console.log(str.startsWith('pink'))
    26. // 4. includes 判断某个字符是不是包含在一个字符串里面
    27. const str = '我是pink老师'
    28. console.log(str.includes('pink')) // true
    29. script>
    30. body>
    31. html>

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <div>div>
    11. <script>
    12. const gift = '50g的茶叶,清洗球'
    13. // 1. 把字符串拆分为数组
    14. // console.log(gift.split(',')) [,]
    15. // 2. 根据数组元素的个数,生成 对应 span标签
    16. // const str = gift.split(',').map(function (item) {
    17. // return `【赠品】 ${item}
      `
    18. // }).join('')
    19. // // console.log(str)
    20. // document.querySelector('div').innerHTML = str
    21. document.querySelector('div').innerHTML = gift.split(',').map(item => `【赠品】 ${item}
      `
      ).join('')
    22. script>
    23. body>
    24. html>

    2.4 Number

    三、综合案例

    转换字符串

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
    6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
    7. <title>Documenttitle>
    8. head>
    9. <body>
    10. <script>
    11. const num = 10
    12. console.log(String(num))
    13. console.log(num.toString())
    14. script>
    15. body>
    16. html>

  • 相关阅读:
    python中如何实现多进程,用进程的优缺点有啥?
    indexDB 本地数据库
    【ASP.NET小白零基础入门】从0部署ASP.NET开发环境,并成功运行一个汉服图片管理系统
    江苏MES
    第六章-Python数据可视化--2
    华为OD机试 - 羊、狼、农夫过河 - 逻辑分析(Java 2022 Q4 100分)
    java动态代理两种实现方式
    Unity学习笔记--使用 VisualStudio 反编译 dll 代码查看源码
    工科top1——清华大学出招生简章了,一起来看看吧
    poi+ResultSet+线程池导出数据库表结构
  • 原文地址:https://blog.csdn.net/upgrade_bro/article/details/133720496