![](https://img-blog.csdnimg.cn/1f9db6929ce846f1afd50e703d889594.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JS查漏补缺
文章平均质量分 65
JS中总会有些细节忽略和难以掌握,每天对JS认识更深刻一点!
sSurene
这个作者很懒,什么都没留下…
展开
-
JS 查漏补缺之对象
我们可以用delete操作符移除属性:delete user.age;列表中的最后一个属性应以逗号结尾:let user = { name: "John", age: 30,}这叫做尾随(trailing)或悬挂(hanging)逗号。这样便于我们添加、删除和移动属性,因为所有的行都是相似的。使用 const 声明的对象是可以被修改的请注意:用const声明的对象能被修改。例如:const user = { name: "John"};...原创 2021-06-30 23:05:01 · 121 阅读 · 0 评论 -
JS 查漏补缺之深浅拷贝
浅拷贝那么,拷贝一个对象变量会又创建一个对相同对象的引用。但是,如果我们想要复制一个对象,那该怎么做呢?创建一个独立的拷贝,克隆?这也是可行的,但稍微有点困难,因为 JavaScript 没有提供对此操作的内建的方法。实际上,也很少需要这样做。通过引用进行拷贝在大多数情况下已经很好了。但是,如果我们真的想要这样做,那么就需要创建一个新对象,并通过遍历现有属性的结构,在原始类型值的层面,将其复制到新对象,以复制已有对象的结构。就像这样:let user = { name: "Jo原创 2021-06-30 23:02:23 · 80 阅读 · 0 评论 -
JS 查漏补缺之构造器与new
当一个函数被使用new操作符执行时,它按照以下步骤:一个新的空对象被创建并分配给this。 函数体执行。通常它会修改this,为其添加新的属性。 返回this的值。换句话说,new User(...)做的就是类似的事情:function User(name) { // this = {};(隐式创建) // 添加属性到 this this.name = name; this.isAdmin = false; // return this;(隐式返回)}...原创 2021-06-30 22:57:29 · 130 阅读 · 0 评论 -
JS 查漏补缺之内存管理
对于开发者来说,JavaScript 的内存管理是自动的、无形的。我们创建的原始值、对象、函数……这一切都会占用内存。JavaScript 中主要的内存管理概念是可达性。简而言之,“可达”值是那些以某种方式可访问或可用的值。它们一定是存储在内存中的。 这里列出固有的可达值的基本集合,这些值明显不能被释放。 比方说: 当前函数的局部变量和参数。 嵌套调用时,当前调用链上所有函数的变量与参数。 全局变量。 (还有一些内部的) 这些值被称作根(roots)。 ..原创 2021-06-30 22:56:14 · 64 阅读 · 0 评论 -
JS 查漏补缺之方法中的this
方法中的this通常,对象方法需要访问对象中存储的信息才能完成其工作。例如,user.sayHi()中的代码可能需要用到user的 name 属性。为了访问该对象,方法中可以使用this关键字。this的值就是在点之前的这个对象,即调用该方法的对象。在 JavaScript 中,this关键字与其他大多数编程语言中的不同。JavaScript 中的this可以用于任何函数,即使它不是对象的方法。下面这样的代码没有语法错误:function sayHi()...原创 2021-06-30 22:54:48 · 103 阅读 · 0 评论 -
JS 查漏补缺之可选链——?.
引入举个例子,假设我们有很多个user对象,其中存储了我们的用户数据。我们大多数用户的地址都存储在user.address中,街道地址存储在user.address.street中,但有些用户没有提供这些信息。在这种情况下,当我们尝试获取user.address.street,而该用户恰好没提供地址信息,我们则会收到一个错误:let user = {}; // 一个没有 "address" 属性的 user 对象alert(user.address.st...原创 2021-06-30 22:52:33 · 85 阅读 · 0 评论 -
JS 注释中的学问
我们通常通过注释来描述代码怎样工作和为什么这样工作。乍一看,写注释可能很简单,但初学者在编程新手倾向于使用注释来解释“代码中发生了什么”。就像这样:的时候,经常错误地使用注释。// 这里的代码会先做这件事(……)然后做那件事(……)// ……谁知道还有什么……very;complex;code;但在好的代码中,这种“解释性”注释的数量应该是最少的。严格地说,就算没有它们,代码也应该很容易理解。关于这一点有一个很棒的原则:“如果代码不够清晰以至于需要一个注释,那么或许它应该被原创 2021-06-30 22:48:20 · 165 阅读 · 0 评论