常用面试题总结3

什么是原型 原型的三个属性 什么是原型链

什么是原型
js规定每个函数都有一个proto属性,指向另一个对象(自身的原型),函数对象除了proto之外还有prototype属性,当函数作为构造函数创建实例时,该属性就被作为实例对象的原型

原型的三个属性
prototype,proto,constructor
1.prototype
每个函数都有一个prototype属性,这个属性指向函数的原型对象。
2.proto
每个对象(除null外)都会有的属性,叫做__proto__,这个属性会指向该对象的原型。
3.constructor
每个原型都有一个constructor属性,指向该关联的构造函数

什么是原型链
当一个对象调用自身不存在的属性和方法时,就回去自己的proto关联的前辈prototype对象上去找,如果没找到,就回去该prototype原型[proto]关联的前辈prototype去找,依此类推,直到找到或者返回undefinend这个链式查找的过程就是原型链

new运算符

分配内存,调用构造函数

浏览器若有一个canvas,放大缩小会有影响吗

会掉帧

promise理解

promise是异步编程的一种解决方案,从语法上讲,Promise是一个对象,可以获取异步操作的消息
使用它的目的:
(1)避免回调地狱的问题
(2)promise对象提供了简洁的API,使得控制异步操作更加容易
promise的用法
new Promise(function(resolve,reject){ })

let const var

var声明是函数作用域,有变量提升,可重复声明
const声明是块级作用域,不能被修改,没有变量提升,相同块作用域内不允许同一变量重复声明
let声明是块级作用域,不能被修改,没有变量提升

vuex五个核心概念

	state
	负责状态管理,类似于vue中的data,用于初始化数据,不能直接修改
	
	getters
	Vuex中的计算属性,相当于vue中的computed,依赖于state状态值,状态值一旦改变,
	getter会重新计算,也就是说,当一个数据依赖于另一个数据发生变化时,就要使用getter
	
	mutations
	专用于修改state中的数据,通过commit触发,这是一个同步逻辑操作

	actions
	可以处理异步,通过dispatch触发,不能直接修改state,首先在组件中通过dispatch触发action,
	然后在action函数内部commit触发mutation,通过mutation修改state状态值

	modules
	模块化管理
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值