随笔分类 - js
摘要:渲染优化 1,资源加载位置 a,CSSOM与DOM是并行的,加载不会引起阻塞,但是Render Tree 依赖DOM Tree与CSSOM Tree,所以css必须优先加载,css放置与head中 b,js文件会引起DOM Tree的形成,造成页面渲染阻塞,因此,js要放置body底部 2,按需加载
        阅读全文
                
摘要:是什么 简而言之,就是用来设置对象的属性的,一般情况下普通设置方法,【object】.【attribute】=【value】就够了 但是当我们需要对属性添加上设置其他属性的时候这个就满足不了了,比如读取监听,读取内容修改,设置监听,设置内容编辑,是否只读等等 怎么用 Object.definePro
        阅读全文
                
摘要:typeof typof利于判断基本类型,除了null number,string,undefined,null,boolean,symbol都能正常测验 null由于js的bug的问题,会显示为object 对于引用类型,typeof除了function之外返回的都是Object 不太适用 con
        阅读全文
                
摘要:单例 保证一个类仅有一个实例,并提供一个全局访问点 1,保证类只有一个实例 2,构造出唯一的实例 饿汉模式 const createOne=(function(){ let instance=null const Create=function(name){ if(instance){ return
        阅读全文
                
摘要:同步/异步 js的代码都是单线程执行的,因此一些浏览器事件和请求事件就需异步任务来实现 一般来讲,所有回调函数都是异步任务 js在执行代码程序时,判断是 同步/异步 函数,若是同步任务会在主线程开始执行 而异步任务则会走事件表,并将回调函数注册进事件队列, 在主线程执行完毕之后才会返回事件队列里检查
        阅读全文
                
摘要:什么是 Promise Promise 是异步编程的一种解决方案,比传统的异步解决方案【回调函数】和【事件】更合理、更强大。现已被 ES6 纳入进规范中。 为什么需要Promise 传统的回调函数确实可以满足回调需求,但是却有个比较大的问题,那就是回调地狱, 回调地狱是指异步函数的嵌套,总有需求是需
        阅读全文
                
摘要:参考资料 概念 协议相同 域名相同 端口相同 http://www.example.com/dir/page.html这个网址,协议是http://,域名是www.example.com,端口是80 限制 (1) Cookie、LocalStorage 和 IndexDB 无法读取。 (2) DOM
        阅读全文
                
摘要:es6的新特性 跳转 promise的使用,怎么用es5实现promise let aaa=function(a){ return new Promise((resolve,reject)=>{ if(a>10){ resolve('success') }else{ reject('error') 
        阅读全文
                
摘要:HMLHttpRequest对象 get请求 //步骤一:创建异步对象 var ajax = new XMLHttpRequest(); //步骤二:设置请求的url参数,参数一是请求的类型,参数二是请求的url,可以带参数,动态的传递参数starName到服务端 ajax.open('get','
        阅读全文
                
摘要:闭包的概念 闭包是指有权访问另外一个函数作用域中的变量的函数 *在js中,目前只有全局作用域,局部(函数)作用域,块级作用域(let,const) *按照字面上理解,其实就是一个函数内部能够使用另外一个函数的局部变量 闭包有个问题就是内存泄漏,所以不能滥用闭包 但是相应的,这也是判断是否是闭包的一个
        阅读全文
                
摘要:1,js的垃圾回收 JavaScript垃圾回收的机制很简单:找出不再使用的变量,然后释放掉其占用的内存,但是这个过程不是实时的,因为其开销比较大,所以垃圾回收系统(GC)会按照固定的时间间隔,周期性的执行。 2,回收机制 全局变量不会被回收。 局部变量会被回收,也就是函数一旦运行完以后,函数内部的
        阅读全文
                
摘要:全局环境下 在全局环境下this指向window console.log(this window)//true 在全局环境下指向window(严格模式是undefined) 函数上下文调用 1,直接调用 function aaa(){ this window } aaa()//true 结果为win
        阅读全文
                
摘要:父类 function Animal(name){ this.name=name } Animal.prototype.eat=function(food){ console.log(this.name+'吃'+food) } 原型链继承 function Cat(){} Cat.prototype
        阅读全文
                
摘要:原型,每一个javascript对象(除null外)创建的时候,就会与之关联另一个对象,这个对象就是我们所说的原型,每一个对象都会从原型中“继承”属性。 一,prototype 1,在JavaScript中,每个函数都有一个prototype属性,这个属性指向函数的原型对象。 2,prototype
        阅读全文
                
摘要:class myPromise{ constructor(fun){ console.log(1) this.state="ready"//ready准备状态 success成功回调后 error失败回调后 this.start=function(){ console.log(2) fun(this
        阅读全文
                
摘要:1,const,let const / let / var有什么不同 var与const和let的不同点 1.var 有变量提升,而const与let也存在变量提升,但由于暂时性死区导致在初始化前(暂时性死区:声明并初始化)没办法调用 2.let与const有块级作用域,何为块级作用域,可以理解为{
        阅读全文
                
                    
                
浙公网安备 33010602011771号