#新理解

高性能WEB开发:深入理解页面呈现、重绘、回流

  在讨论页面重绘、回流之前。需要对页面的呈现流程有些了解,页面是怎么把html结合css等显示到浏览器上的,下面的流程图显示了浏览器对页面的呈现的处理流程。可能不同的浏览器略微会有些不同。但基本上都是类似的。 页面呈现流程:1、浏览器把获取到的html代码解析成1个Dom树,html中的每个tag都是Dom...

深入理解JSON

一、JS判断字符串是否为JSON的方法:functionisJSON(str){if(typeofstr=='string'){try{JSON.parse(str);returntrue;}catch(e){console.log(e);returnfalse;}}console.log('Itisnotastrin...
代码星球 代码星球·2020-06-27

深入理解this和call、bind、apply对this的影响及用法

  首先看一道网易的面试题:vara={a:"haha",getA:function(){console.log(this.a);}}varb={a:"hello"}vargetA=a.getA;vargetA2=getA.bind(a);functionrun(fn){fn();}//分别输出a.getA();//h...

理解JavaScript里this关键字

1、全局代码中的this:始终指向window2、函数代码中的this:varfoo={x:10};varbar={x:20,test:function(){alert(this===bar);alert(this.x);}};bar.test();//bar对象调用test():true,20foo.test=bar...

理解JavaScript私有作用域

私有作用域:跟外界的变量方法毫不冲突,豪无关系varstr="javascript";(function(){alert(str);//undefinedvarstr="helloworld";alert(str);//helloworld})();alert(str);//javascript语法解析:函数自执行里面...

理解JavaScript模仿块作用域

1、JS没有块作用域  在C和Java中,一对大括号{}决定一个作用域,比如for循环。在js中,变量可以在函数任何一处定义,并且忽略重复定义。变量初始化之前使用,值永远是undefined。functioncount(){b=1;a=1;alert(a);//1for(vara=0;a<7;a++){//tod...

深入理解JavaScript变量作用域

  JS变量作用域特点:  a、JS变量作用域是基于其特有的作用域链的。  b、JavaScript没有块级作用域。  c、函数中声明的变量在整个函数中都有定义。1、作用域链varrain=1;functionrainman(){varman=2;functioninner(){varinnerVar=4;alert(...

理解闭包的微观世界和JS垃圾回收机制

functiona(){  vari=0;  functionb(){    alert(++i);  }  returnb;}varc=a();c(); 一、闭包的微观世界  如果要更加深入的了解闭包以及函数a和嵌套函数b的关系,我们需要引入另外几个概念:函数的执行环境(excutioncontext)、活...

深入理解JavaScript闭包

一、变量的作用域  要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。另一方面,在函数外部自然无法读取函数内的局部变量。(这里有一个地方需要注意,函数内部声明变量的时候,一定要使用var命令...

JS面向对象的理解

参考博文:https://www.cnblogs.com/Leo_wl/p/5734794.html...
代码星球 代码星球·2020-06-27

JS回调函数 callback() 、call 、apply的理解

callback()回调函数JS是单线程函数,单线程所有的函数执行都是同步的,前一个函数执行完之后再执行下一个函数,这样的话如果排队的函数很多就会造成页面长时间无响应所以,就要用到了JS异步callback怎么理解callbck ?字面上理解下来就是,回调就是一个函数的调用过程。那么就从理解这个调用过程开始吧...

JS 闭包的理解

先写一个简单闭包函数functionA(){varstr='helloworld'functionB(){alert(str);}returnB;}varC=A();C();//Helloworld!这个闭包函数的执行过程为1、定义普通函数A2、在A函数内部定义普通函数B3、在A函数中返回B4、执行A,并把A返回的结果...
代码星球 代码星球·2020-06-27

JS原型与原型链继承的理解

一、原型先从构造函数开始吧!构造函数是什么?构造函数与其他函数唯一的区别在于调用方式不同。任何函数只要通过new来调用就可以作为构造函数,它是用来创建特定类型的对象。下面定义一个构造函数Female:functionFemale(name){this.name=name;this.sex='female';}通过new...
代码星球 代码星球·2020-06-27

window和document的区别理解,bom和dom的区别理解

Window对象:是整个BOM的核心,所有对象和集合都以某种方式回接到window对象。Window对象表示整个浏览器窗口,但不必表示其中包含的内容。Document对象:实际上是window对象的属性。这个对象的独特之处是唯一一个既属于BOM又属于DOM的对象。从BOM角度看,document对象由一系列集合构成,这...

简单理解Linux的Loopback接口

Linu支持环回接口(LoopbackInterface),以允许运行在同一台主机上的客户程序和服务器程序通TCP/IP进行通信。 A 类网络127就是为环回接口预留的 。根据惯例,大多数系统把IP地址127.0.0.1分配给这个接口,并命名为localhost。一个传给环回接口的IP数据...
首页上一页...3536373839...下一页尾页