前端JavaScript入门-day07

news2024/11/22 20:57:49

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

深入对象

创建对象三种方式

1. 利用对象字面量创建对象
2. 利用 new Object 创建对象
3. 利用构造函数创建对象

构造函数

构造函数 : 是一种特殊的函数,主要用来初始化对象
使用场景: 常规的 {...} 语法允许创建一个对象。比如我们创建了佩奇的对象,继续创建乔治的对象还需要重新写一遍,此时可以通过 构造函数 快速创建多个类似的对象
构造函数在技术上是常规函数。
不过有两个约定:
1. 它们的命名以大写字母开头。
2. 它们只能由 "new" 操作符来执行。
说明:
1. 使用 new 关键字调用函数的行为被称为 实例化
2. 实例化构造函数时没有参数时可以省略 ()
3. 构造函数内部无需写return,返回值即为新创建的对象
4. 构造函数内部的 return 返回的值无效,所以不要写return
5. new Object() new Date() 也是实例化构造函数

实例成员&静态成员

实例成员:
通过构造函数创建的对象称为实例对象,实例对象中的属性和方法称为实例成员。

说明:
1. 实例对象的属性和方法即为实例成员
2. 为构造函数传入参数,动态创建结构相同但值不同的对象
3. 构造函数创建的实例对象彼此独立 互不影响
静态成员:
构造函数的属性和方法被称为静态成员

说明:
1. 构造函数的属性和方法被称为静态成员
2. 一般公共特征的属性或方法静态成员设置为静态成员
3. 静态成员方法中的 this 指向构造函数本身

内置构造函数  

Object

Object 是内置的构造函数,用于创建普通对象。

推荐使用字面量方式声明对象,而不是 Object 构造函数 

学习三个常用静态方法(静态方法就是只有构造函数Object可以调用的)  

作用:Object.keys 静态方法获取对象中所有属性(键)

语法:

 注意: 返回的是一个数组

作用:Object.values 静态方法获取对象中所有属性值  

语法:
注意: 返回的是一个数组
作用: Object. assign 静态方法常用于对象拷贝
语法:

使用:经常使用的场景给对象添加属性

Array  

Array 是内置的构造函数,用于创建数组
创建数组建议使用字面量创建,不用 Array构造函数创建

数组常见实例方法-核心方法  

作用: reduce 返回函数累计处理的结果,经常用于求和等
基本语法:
累计值参数:
1. 如果有起始值,则以起始值为准开始累计, 累计值 = 起始值
2. 如果没有起始值, 则累计值以数组的第一个数组元素作为起始值开始累计
3. 后面每次遍历就会用后面的数组元素 累计到 累计值 里面 (类似求和里面的 sum )
<!-- 
  需求:
  ①:给员工每人涨薪 30%
  ②:然后计算需要支出的费用
 -->
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <script>
    const arr = [{
      name: '张三',
      salary: 10000
    }, {
      name: '李四',
      salary: 10000
    }, {
      name: '王五',
      salary: 20000
    },
    ]
    // 涨薪的钱数  10000 * 0.3 
    // const money = arr.reduce(function (prev, item) {
    //   return prev + item.salary * 0.3
    // }, 0)
    const money = arr.reduce((prev, item) => prev + item.salary * 0.3, 0)
    console.log(money)
  </script>
</body>

</html>

数组常见方法-其他方法

数组常见方法- 伪数组转换为真数组

静态方法 Array.from()

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
  </ul>
  <script>
    //  Array.from(lis) 把伪数组转换为真数组
    const lis = document.querySelectorAll('ul li')
    // console.log(lis)
    // lis.pop() 报错
    const liss = Array.from(lis)
    liss.pop()
    console.log(liss)
  </script>
</body>

</html>

String

Number

Number 是内置的构造函数,用于创建数值
常用方法:
toFixed() 设置保留小数位的长度

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/752254.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java阶段五Day06

Java阶段五Day06 文章目录 Java阶段五Day06问题解析阶段性架构图 Dubbo组件远程调用RPC概括DubboDubbo调用案例调用业务选择和dubbo角色环境准备dubbo远程调用原理 问题解析 阶段性架构图 这个架构图&#xff0c;由于nacos的功能&#xff0c;可以实现服务治理&#xff08;服务…

精确长延时电路/数字式长延时电路设计

精确长延时电路 该电路由CD4060组成定时器的时基电路&#xff0c;由电路产生的定时时基脉冲&#xff0c;通过内部分频器分频后输出时基信号。在通过外设的分频电路分频&#xff0c;取得所需要的定时控制时间。 一、电路工作原理 电路原理如图13 所示。 通电后&#xff0c;时…

MySQL在Centos 7环境安装

说明&#xff1a; 1.安装与卸载中&#xff0c;用户全部切换成为root&#xff0c;一旦安装&#xff0c;普通用户都能使用。 2.初期练习&#xff0c;mysql不进行用户管理&#xff0c;全部使用root进行&#xff0c;尽快适应mysql语句&#xff0c;后面学了用户管理&#xff0c;在考…

Unity UnityWebRequest使用http与web服务器通讯

一、搭建客户端与服务器http通讯 1.在Nodejs中文官网Node.js 中文网 (nodejs.com.cn)&#xff0c;下载并安装Nodejs 2.在项目文件夹下新建WebServer文件夹&#xff0c;打开CMD窗口&#xff0c;在WebServer文件夹路径下安装express 3.在WebServer文件夹中新建main.js文件&#…

【UE4 塔防游戏系列】03-创建第一个敌人

步骤 1. 新建一个父类为“Chararcter”类&#xff0c;作为所有敌人的总类&#xff0c;命名为“TotalEnemyCategory” 以“TotalEnemyCategory”为父类创建子蓝图类&#xff0c;命名为“Enemy1” 2. 新建一个动画蓝图 选择目标骨骼为“Skeleton_Crossbowman_Skel” &#xff0c…

Stable Diffusion - After Detailer 插件 脸部和手部 重绘算法与应用

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/131699857 After Detailer 是一个用于 Stable Diffusion Webui 的扩展插件&#xff0c;可以自动检测、遮盖和修复图片中的人脸、手部或全身&#…

Latex 合并单元格 (合并同列的两行不居中问题)

Excel转latex 即使设置了居中&#xff0c;在latex也会不居中 删除上面这个

音频播放器Web页面集成(基于HTML5)

音频播放器是云点播Web播放器的重要补充&#xff0c;主要应用于音频为主的业务场景&#xff0c;基于HTML5实现PC/移动端兼容&#xff0c;并深度融合了视频云业务&#xff0c;如支持加密播放等&#xff0c;为用户提供简单、快速、安全、稳定的播放服务。 基础功能 支持播放上传…

冒泡排序模拟实现qsort()函数

冒泡排序模拟实现qsort函数 前言1. 分析2. 解决一&#xff0c;如何接受不同数据3. 解决二&#xff0c;如何实现不同数据的比较4. 解决三&#xff0c;如何实现不同数据交换5. 模拟bubble_sort&#xff08;&#xff09;函数排序整型所有代码实现6. 结构体排序实现7. 结尾 前言 要…

将字符串转为类名

使用globals函数将字符串转为类名 如下&#xff1a; class Data:def __init__(self):self.name kellydef hello(self):print(hello)#直接使用字符串报错 res Data().hello() #res Data.hello()res1 globals()[Data]().hello()#通过字符串获取变量数据&#xff08;变为类中…

【ACM】—蓝桥杯大一暑期集训Day1

&#x1f680;欢迎来到本文&#x1f680; &#x1f349;个人简介&#xff1a;陈童学哦&#xff0c;目前专攻C/C、Python、Java等方向&#xff0c;一个正在慢慢前行的普通人。 &#x1f3c0;系列专栏&#xff1a;陈童学的日记 &#x1f4a1;其他专栏&#xff1a;CSTL、蓝桥杯&am…

怎样优雅地增删查改(五):按组织架构查询

文章目录 原理实现应用测试 之前我们实现了Employee&#xff0c;Alarm管理模块以及通用查询应用层。 Employee的集合查询业务&#xff0c;是通过重写CreateFilteredQueryAsync方法&#xff0c;来实现按组织架构查询的过滤条件。 我们将这段逻辑代码提取到通用查询应用层中&…

【前后缀GCD】ABC125 C

C - GCD on Blackboard (atcoder.jp) 题意&#xff1a; 思路&#xff1a; 这道题&#xff0c;多看看样例大概就出来了 由样例可知&#xff0c;换成的数可以是其他N-1个数的gcd&#xff0c;这样对答案的贡献也没有影响 所以直接去枚举换的是什么数就行 因此怎么去快速求其他…

对于 Spring MVC 了解? SpringMVC 的执行流程?SpringMVC 的核心是什么?请求的流程是怎么处理的?控制反转怎么实现的?

对于 Spring MVC 了解? 之前 Model1 和 Model2 这两个没有 Spring MVC 的时代。 Model1 时代 : 整个 Web 应用几乎全部用 JSP 页面组成&#xff0c;只用少量的 JavaBean 来处理数据库连接、访问等操作。 JSP 既是控制层又是表现层&#xff0c;存在很多问题&#xff0c;如①将…

逆天!安卓正式超越 Windows 成世界第一大操作系统

导读Android是一种基于Linux的自由及开放源代码的操作系统&#xff0c;主要使用于移动设备&#xff0c;如智能手机和平板电脑&#xff0c;由Google公司和开放手机联盟领导及开发。 10 亿的用户数意味着 Windows 依然是第一大桌面操作系统&#xff0c;不过如果算上智能手机平台…

抖音seo源码矩阵系统开发规则开发者分享(一)

抖音SEO矩阵系统源码开发&#xff0c;需要遵循一下步骤 1. 确定需求和功能&#xff1a;明确系统的主要目标和需要实现的功能&#xff0c;包括关键词研究、短视频制作、外链建设、数据分析、账号设置优化等方面。 2. 设计系统架构&#xff1a;根据需求和功能确定系统的架构&am…

微信公众号错误代码:40125

微信公众号错误代码&#xff1a;40125 报错代码 错误代码&#xff1a;40125, 错误信息&#xff1a;invalid appsecret rid: 64b0ba1d-74e53e36-717abb43&#xff0c; 微信原始报文&#xff1a;{"errcode":40125,"errmsg":"invalid appsecret rid: 6…

金融数据库的战场,太平洋保险和OceanBase打了场胜仗

点击关注 文丨刘雨琦 “数据库的国产替代&#xff0c;必须经过严格的考虑&#xff0c;保证不会出错&#xff0c;所以大多数企业的领导层选择按兵不动或者简单扩容。因为不换就不会错&#xff0c;选了很久如果选错&#xff0c;还可能会出现重大事故。” 某银行数据库技术人员…

UG\NX二次开发 获取对象的边界包容盒 UF_MODL_ask_bounding_box_aligned

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan 简介: 获取对象的边界包容盒 UF_MODL_ask_bounding_box_aligned,可以得到指定坐标系下的盒子,速度快,结果不精确 效果: 代码: //UF_MODL_ask_bounding_box_aligned #include "me.hpp" #i…

【ABAP】数据类型(六)「域的概要」

💂作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后端的开发语言ABAP,SQL进行任务的完成,对SAP企业管理系统,SAP ABAP开发和数据库具有较…