07 2020 档案
摘要:##定义 object.assign用于对象的合并,将源对象(source)的所有可枚举属性复制到目标对象(target)中 let targetObj = { a: 1 }; let sourceObj1 = { b: 2 }; let sourceObj2 = { c: 3 }; Object.
阅读全文
摘要:##...arr 使用三个点可以将数组转为以逗号分隔的参数序列。 ###example1.将数组转化为以逗号分隔的参数序列 const ARR1 = [1, 2, 3, 4, 5]; console.log(...ARR1); //1 2 3 4 5 ###example2.将多个数组进行合并 co
阅读全文
摘要:##错误代码 <div id="div"></div> <script> var imgEle = document.createElement('img'); imgEle.src = "../318bb51754058e0b9d9e8c6455d146f2.jpg"; imgEle.id = '
阅读全文
摘要:##progress元素的基本属性 progress元素有max,value,position.labels四个属性 max:设置了进度条的最大数值,其用作分母的效果。返回进度条max属性的值。 value:设置了进度条的当前的值,其用作分子的效果。返回进度条vaue属性的值。 labels:返回进
阅读全文
摘要:DATA URL简介及DATA URL的利弊
阅读全文
摘要:箭头函数和其它函数不同的是:箭头函数并不创建arguments对象和this对象。 箭头函数的this值来自于作用域链。同其它参数一样,向上查找。 function foo() { return () => { console.log(this.a); } } var a = 77; var obj
阅读全文
摘要:function foo(arg1, arg2, arg3) { console.log(arg1); console.log(arg2); console.log(arg3); console.log(this.a); } var obj1 = { a: 77 } foo.call(obj1, 1
阅读全文
摘要:function foo() { console.log(this); console.log(this.a); } function doFoo(fn) { fn(); } var obj = { a: 2, foo: foo } var a = 'oops,global'; doFoo(obj.
阅读全文
摘要:创建一个空对象 创建它的原型对象 将构造函数this值绑定到这个对象上 为这个对象创建属性 返回对象的地址
阅读全文
摘要:function f(){ return this.a; } var g = f.bind({a:"azerty"}); console.log(g()); // azerty var o = {a:37, f:f, g:g}; console.log(o.f(), o.g()); // 37, a
阅读全文
摘要:js基础梳理-究竟什么是变量对象,什么是活动对象?
阅读全文
摘要:function foo() { var a = 7; console.log(a);//7 console.log(b);//b is not defined (function b() { a = 77; })(); console.log(a);//77 } foo(); var c=func
阅读全文
摘要:function a(arg) { console.log('this is a'); arg(); } function b(arg) { console.log('this is b'); arg(); } function c(arg) { console.log('this is c');
阅读全文
摘要:##LHS查询与RHS查询 L与R分别代表左侧与右侧,即对赋值操作的左侧与右侧出现的变量进行查询。 以代码var a=b;为例,js引擎会执行如下步骤: js引擎会对赋值操作左侧的a变量进行LHS查询————即在当前作用域下查询变量a是否存在,如果存在,则忽略var声明,得到变量a的位置;如果不存在
阅读全文
摘要:##定义 闭包是指有权访问另一个函数作用域中的变量的函数。创建闭包的常见方式是在一个函数中创建另一个函数 ##函数是怎样创建的 js在执行代码前会对代码进行预处理。例如用var声明变量和用function声明函数,这一阶段同样包括声明提升的情况。当预处理发现有函数声明时,就会创建该函数。但预处理会跳
阅读全文
摘要:##arguments ###argument对象是什么 arguments是用来保存函数实参的对象,它在函数创建时会自动创建,在函数调用时会初始化。它保存有实参的值,callee属性(函数的指针),length属性(传入实参的数量) ###在传入实参情况下arguments对象与形参的对应关系 f
阅读全文
摘要:var person = { name: 'Nick' }; console.log(person.name); console.log(person); person.name='Jane'; console.log(person.name); console.log(person); 经测试在c
阅读全文
摘要:##定义 递归函数是在一个函数通过名字调用自身的情况下构成的 ##关于arguments.callee arguments.callee是一个指向正在执行函数的指针,在函数内部调用这个方法会直接指向所调用的函数本身。(它是指针,仅指向函数本体,调用函数要加括号,调用并传参在括号内传参) functi
阅读全文
摘要:##执行环境 ###执行环境的定义 执行环境(execution context)的作用是定义了变量或函数的访问数据的范围.每个执行环境都有一个变量对象(variable object),环境中定义的所有变量和函数都保存在这个对象中. (相当于宇宙-银河系-太阳系-九大行星的关系,层层包裹) ###
阅读全文
摘要:在向函数传递参数的过程中,参数的传递实际上是一种复制变量的操作.变量因为分为基本类型值和引用类型值,故在传递参数这一过程中有不同的表现.但终究它们都是按值传递的. ##基本类型值与引用类型值的复制 栈内存(stack)用于保存基本类型数据和引用类型数据的指针.它的读取方式是先进后出(LIFO las
阅读全文