重修之路1

我也不知道我现在处于个什么状态,我在以前写代码时知道部分方法如何使用,但是也仅限于此我并不了其如何实现,让我感到迷茫我是越来越菜了随着AI的发展它写出的代码简洁高效甚至让我有些看不懂,以至于我开始怀疑自己的JS基本功因此重修JS基本功,我不知道我的想法是否正确也许我从来就没真正的掌握JS这门基本功一直都是在为了实现功能而一条路走到黑,但是我希望自己深入研究JS这种状态可以保持下去20224-7-20:22:21

我记录这段内容的想法是重新学习vue2中的 双向绑定原理,但在此之前要重新复习,set,get,map等基本概念

Set概念方法
set不会接受重复的值,在set中NAN是永远相等,但是对象在set中永远不相等
构造函数,默认就是Set函数Set.prototype.constructor
返回Set实例的成员总数Set.protorype.size
添加值,返回set本身add.(val)
删除某个值,返回布尔值,表示是否成功delete.(val)
返回一个布尔值,表示是否为set成员has.(val)
清楚所有成员cleat.()
将set结构转为数组结构const a = Array.from(set)
Set 和数组都有各自的方法来操作元素,但这些方法并不完全相同。例如,Set 有 add、delete、has 等方法,而数组则有 push、pop、shift、unshift、splice 等方法。此外,Set 的 size 属性是一个只读属性,不能直接修改,而数组的 length 属性可以直接修改
返回键名的遍历器keys()
返回键值的遍历器values()
返回键值对的遍历器keys.()
使用函数回调函数每个成员ForEach()
WeakSetWeakSet结构与set 与set类似,也是不能加入重复的值,但是他有两个区别1.weakset成员只能是对象,而不能是其他类型的值2.weakset中对象都是弱类型引用垃圾回收机制不考虑回收
返回键值对的遍历器keys.()
getElementsByTagName用于根据给定的标签名检索文档中的所有元素
getElementsByClassName(className)此方法返回文档中所有具有指定类名的元素的实时,var elements = document.getElementsByClassName(“my-class”);
getElementById(elementId)此方法返回具有指定 ID 的元素。ID 应该在文档中是唯一的;var element = document.getElementById(“my-element”);
querySelector(selector)此方法返回文档中匹配指定 CSS 选择器的第一个元素。如果没有找到任何匹配的元素,它将返回 null
querySelectorAll(selector)此方法返回文档中匹配指定 CSS 选择器的所有元素的静态 NodeList。var elements = document.querySelectorAll(“.my-class”);
getElementsByTagNameNS(namespaceURI, localName)此方法返回文档中具有指定命名空间和本地名称的所有元素的实时 HTMLCollection。
function defineProperty() {var _obj = {};Object.defineProperties(_obj, {a: {value: 1,writable: true,//是否能修改enumerable: true,//是否能枚举configurable:true//是否能删除},b: {value: 23}});return _obj;
}
var obj = defineProperty();
obj.a = 5;
console.log(obj);
//猜一下此时obj的值是什么?? //(1,2) 
//为什么没有改变呢? 因为我们没有明确的规定Object.defineProperties()是否可写
//在a{value:1,writable:true}中添加writable为true明确这个值可以改才能进行修改
//将数据设置为可枚举enumerable:true 默认为false,
//枚举的意思就是:比如多个数据可以展开进行显示

数据劫持:vue.js采用的是数据劫持结合发布者_订阅者模式的方式,通过Object.definProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发响应的监听回调
在这里插入图片描述

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

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

相关文章

【接口测试】params传参与body传参区别

文章目录 一.params传参二.body传参三.两者区别说明 一.params传参 params传参一般用于get请求 params传参时,参数会附于URL后面以问号形式展示。 示例: http://ip地址:端口号/login?usernamexm&pwd111二.body传参 body传参一般用于post请求 body传参时需…

MacOS安装SDKMan管理Java版本

文章目录 1 简介2 安装与卸载2.1 安装2.2 卸载 3 使用3.1 查看其他工具:支持 Ant, Maven 等3.2 查看Java版本3.3 安装Java,加上相关的版本3.4 设置Java版本(全局)3.5 只在当前窗口生效3.6 卸载1 默认环境无法卸载 4 jdk安装的位置5 与IDEA集成参考 1 简介…

简单修改,让UE4/5着色器编译速度变快

简单修改,让UE4/5着色器编译速度变快 目录 简单修改,让UE4/5着色器编译速度变快 一、问题描述 二、解决方法 (一)硬件升级 (二)调整相关设置和提升优先级 1.调整相关设置 (1&#xff09…

Pytorch 6

罗切斯特回归模型 加了激活函数 加了激活函数之后类 class LogisticRegressionModel(torch.nn.Module):def __init__(self):super(LogisticRegressionModel, self).__init__()self.linear torch.nn.Linear(1,1)def forward(self, x):# y_pred F.sigmoid(self.linear(x))y_p…

Java学习 - Spring Boot整合 Thymeleaf 实例

什么是 Thymeleaf Thymeleaf 是新一代的 Java 模板引擎,类似于 Velocity、FreeMarker 等传统引擎,其语言和 HTML 很接近,而且扩展性更高; Thymeleaf 的主要目的是将优雅的模板引入开发工作流程中,并将 HTML 在浏览器中…

MSPM0G3507学习笔记1:开发环境_引脚认识与点灯

今日速通一款Ti的单片机用于电赛:MSPM0G3507 这里默认已经安装好了Keil5_MDK 首先声明一下: 因为是速成,所以需要一定单片机学习基础,然后我写的也不会详细,这个专栏的笔记也就是自己能看懂就行的目标~~~ 文章提供测试代码解…

智能制造·数字化工厂建设规划方案(65P)

获取完整PPT见下图 更多有关华为研发管理/IPD、MBSE、PLM、ERP、MES、数据治理、数字样机等方面免费解决方案、资料获取,请见下图

Ecovadis评估的流程是什么

Ecovadis评估流程是一个全面、系统且注重细节的过程,旨在为企业提供关于其可持续性表现的深入洞察。这一评估不仅覆盖了企业在环境、社会和治理方面的多个方面,还强调了持续改进的重要性,确保企业能够不断提升其CSR(企业社会责任&…

ES中聚合查询之date_histogram查询出现key_as_string 和 key含义

ES中聚合查询之date_histogram查询出现key_as_string 和 key含义 DSL语句 #实例 GET /capture_features_202407/_search {"query": {"bool": {"must": [{"terms": {"plateNo": ["汉A00001"]}},{"range&quo…

构建一个具有深色模式的简单React Web应用

在当今的Web开发世界里,创建一个既美观又功能丰富的用户界面是至关重要的。在本文中,我们将探讨如何使用React构建一个简单但功能强大的Web应用,它包含导航栏、内容展示区域和深色模式切换功能。 项目概述 我们的目标是创建一个具有以下特性的Web应用: 左侧导航栏,包含四个链…

Qt创建自定义组件并且promote to之后导致编译错误(CMake)

创建自定组件并且加入到全局(勾选"Global include"选项)后,重新编译,元对象编译器生成的ui_xxxx.h文件中会新加入自定义组件的头文件: 如图所示,编译器提示找不到自定义组件的头文件: Solution: 在CMakeL…

opencascade AIS_InteractiveContext源码学习9 obsolete methods

AIS_InteractiveContext 前言 交互上下文(Interactive Context)允许您在一个或多个视图器中管理交互对象的图形行为和选择。类方法使这一操作非常透明。需要记住的是,对于已经被交互上下文识别的交互对象,必须使用上下文方法进行…

Leetcode3216. 交换后字典序最小的字符串

Every day a Leetcode 题目来源:3216. 交换后字典序最小的字符串 解法1:模拟 找到第一个 s[i] > s[i 1],且它们奇偶性相同,交换它们。 代码: /** lc appleetcode.cn id3216 langcpp** [3216] 交换后字典序最小…

Python群体趋向性潜关联有向无向多图层算法

🎯要点 🎯算法模型图层节点和边数学定义 | 🎯算法应用于贝叶斯推理或最大似然优化概率建模的多图层生成模型 | 🎯算法结合图结构边和节点属性 | 🎯对比群体关联预测推理生成式期望最大化多图层算法 | 🎯使…

【故障排除】Unity在编辑器模式下Play时闪退

一开始以为是偶然的情况,但逐渐发现了规律: 每次某个角色释放技能的时候就会闪退。 为了找到问题代码,找了一下存放运行Log的文件夹: 打开 Console 窗口(菜单:Window > General > Console&#xff…

[Jenkins]jenkins-cli.jar调用用户token启动任务

背景:项目入了一群od伙伴,但是od伙伴有单独的构建工程需要提交,由于jenkins的版本太拉闸,不能配置根据role和项目分权限,插件安装失败,不得已想到一个办法。让OD伙伴,在本地,用java&…

Mindspore框架循环神经网络RNN模型实现情感分类|(二)词向量

Mindspore框架循环神经网络RNN模型实现情感分类 Mindspore框架循环神经网络RNN模型实现情感分类|(一)IMDB影评数据集准备 Mindspore框架循环神经网络RNN模型实现情感分类|(二)预训练词向量 Mindspore框架循环神经网络RNN模型实现…

keil5中 FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED的问题

用破解软件激活一下cid: 再重新进入keil中,rebuild:

【C++】【继承】【子对象】【构造函数】含子对象的派生类的构造函数写法

(1)子对象的概念:若派生类A1的数据成员中包含基类A的对象a,则a为派生类A1的子对象 (2)含子对象的派生类的构造函数的执行顺序是: ①调用基类构造函数,对基类数据成员初始化 ②调用子…

K8s-控制器

一 为什么使用控制器 pod控制器 作用:1.pod类型资源删除,不会重建 2.控制器可以帮助用户监控,并保证节点上运行定义好的pod副本数 3.pod超过或低于用户期望,控制器会创建、删除pod副本数量 控制器类型&am…