由闭包引出的垃圾回收
闭包 是指有权访问另一个函数作用域中的变量的函数,创建闭包最常见的方式就是在一个函数内部创建l另一个函数,通过另一个函数访问这个函数的局部变量
细说 Javascript 对象篇(二) : 原型对象
Javascript 并没有类继承模型,而是使用原型对象 prototype 进行原型式继承。 尽管人们经常将此看做是 Javascript 的一个缺点,然而事实上,原型式继承比传统的类继承模型要更加强大。举个例子,在原型式继承顶端构建一个类模型很简单,然而反过来则是个困难得多的任务。Javascript 是唯一一个被广泛运用的原型式继承的...
JSON.stringfy 的使用场景介绍
JSONstringfy方法的作用是将JavaScript对象转换为JSON字符串。在JavaScript中,JSON(JavaScript Object Notation)是一种用于数据交换的轻量级数据格式,它基于JavaScript对象语法,但是与之略有不同。JSON字符串由键/值对组成,键是字符串,值可以是字符串、数字、布尔值、数组、对象或null。stringfy方法允许我们将Ja...
2024-01-29
[译]Understanding javascript's 'undefined'
和其他语言相比,javascript中的对于undefined的理解还是有点让人困惑的。特别是试着理解ReferenceErrors错误("x is not defined")以及在编码过程中如何去避免这些错误总让人感到比较困惑。
JS_高程4.变量,作用域和内存问题(3)垃圾收集
JavaScript的自动垃圾收集机制 执行环境会负责管理代码执行过程中使用的内存,编写JavaScript程序时,所需内存的分配以及无用内存的回收完全实现自动管理。 原理: 找出那些不再继续使用的变量,然后释放其占用的内存。为此,垃圾收集器会按照固定的时间间隔(或代码执行中预定的收集时间)周期性地执行这一操作...
2019-10-17
JavaScript数据类型及差异说明
JavaScript 中的数据类型可以分为基本类型和引用类型基本类型数字类型(number):表示数值,包括整数和浮点数。字符串类型(string):表示文本字符串,可以包含任意字符。布尔类型(boolean):表示 true 或 false。空值类型(null):表示一个空值。未定义类型(undefined):表示一个未定义的值。符号类型(symbol)...
2024-03-19
go语言的值传递
Go语言的参数只能是值传递 值传递是一个拷贝的过程 Go:值传递 {代码...} Javascript: 引用传递 {代码...} 但是Go语言可以通过指针来实现引用传递的作用 {代码...} 既然说go语言的参数传递只能是值传递,所以这里实际上是把指针地址拷贝了一份,而两个地址都指向了main函数的变量list的地址,所以才使list的值发生了改变
2019-08-24
20170605-内存泄漏和垃圾回收
由于字符串、对象和数组没有固定大小,所以当他们的大小已知时,才能对他们进行动态的存储分配。JavaScript程序每次创建字符串、数组或对象时,解释器都必须分配内存来存储那个实体。只要像这样动态地分配了内存,最终都要释放这些内存以便他们能够被再用,否则,JavaScript的解释器将会消耗完系统中所有可用的内存,造...
深入理解JavaScript——一切皆对象
先来看一句有争议的话——"在 JavaScript 中,一切皆对象。理解了对象,就能理解 JavaScript"你觉得这句话是对是错,为什么?其实在知乎上就曾有人提过一个问题——如何理解javascript中一切都是对象?我们不妨先放一放,在文末笔者会给出自己的答案,如想看答案可直接划到文末查看在前文 JavaScript由什么组成,笔者曾一句...
值类型、执行环境和垃圾回收
javascript的值类型有两种:基本类型 引用类型。基本类型的值是指的简单的数据段,基本类型有五种,依次是:Undefined Boolean String Number Null,而引用类型的值指的是由多个值构成的对象.
关於Javascript基本类型和引用类型小知识
基本的数据类型有:undefined,boolean,number,string,null. 基本类型的访问是按值访问的,就是说你可以操作保存在变量中的实际的值。JavaScript中除了上面的基本类型之外就是引用类型了。
2019-07-30
JavaScript的赋值、深拷贝和浅拷贝
JavaScript中的基本数据类型,这些值都有固定的大小,保存在栈内存中,由系统自动分配存储空间在栈内存空间的值,我们可以直接进行操作,因此基础数据类型都是按照值访问
JS基础之undefined与null的区别分析
在javascript开发中,开始学习js的时候时常困惑我的就是null和undefined的区别,所以很想总结下我对这两个的理解学习过js的同学都知道:
《JS高程3》—— 内存回收、垃圾收集、内存泄漏
JavaScript具有自动垃圾收集机制,也就是说,执行环境会负责管理代码执行中使用的内存。在C和C++语言中,开发人员一项基本任务就是手工跟踪内存的使用情况,这是造成许多问题的一个根源。在编写JavaScript程序时,开发人员不用在关心内存使用问题,所需内存的分配以及无用内存的回收完全实现了自动管理。这种垃圾收集机...
2017-06-14
33 个 js 核心概念(三):值类型与引用类型
如今前端的发展日新月异,很多人(包括我)都是追逐着一些流行的框架学习,但往往是浮于表面,知其然而不知其所以然。当我认真的想要搞懂 react、redux 实现原理时,才发现,JavaScript 的基础知识是如此重要。
2018-12-08
ES基础知识点——(类型篇)
变量类型 JS的类型分类和判断 值得类型和引用 原型与原型链(继承) 原型和原型链的定义 继承写法 作用域和闭包 执行上下文 this 闭包是什么 异步 同步VS异步 异步和单线程 前端异步的场景 ES6/7新标准的考察 箭头函数 Module Class Set和Map/WeakSet和WeakMapuuu Promise 变量类型 变量分类 JavaScript 是一种弱类型脚...
2020-04-05
容易被遗忘的前端基础:JavaScript 内存详解
相对地,JavaScript会在创建变量(对象、字符串)时自动分配内存,并在这些变量不被使用时自动释放内存,这个过程被称为垃圾回收。这个“自动”释放资源的特性带来了很多困惑,让JavaScript(和其他高级级语言)开发者误以为可以不关心内存管理。这是一个很大的错误