前端面试总结(二)

1. JS 或者 OC实现多继承

function obj1 () {
	this.aaa = '124'

	// body...
}
	obj1.prototype.b = function aa () {

		console.log('111')
	}

function obj2 () {

	this.bbb = '123'

	// body...
}
	obj2.prototype.a = function obj2func () {

		console.log('222')
	}

function obj3 () {
	// body...
	obj2.call(this)
}

obj3.prototype = new obj1()
obj3.prototype.constructor = obj3

// var obj3 = new obj3()
console.log('111')

for (var i  in  obj2.prototype){

	// console.log('111')

	// console.log(obj2.prototype[i])
	obj3.prototype[i] = obj2.prototype[i]
}


var obj4= new obj3()
obj4.a()
obj4.b()
console.log(obj4.aaa,obj4.bbb)

2. 实现水平居中或者垂直剧中的多种方式

行内标签

/*第一种*/
/*display: flex;*/
/*justify-content: center;*/
/*align-items: center;*/
/*第二种*/
/*text-align: center;*/
/*第三种*/
/*position: relative;*/

块级标签:

子元素:margin:0 auto

 

3. href和src的区别

href 可以导入a、link,不影响当前界面

src会先下载src资源,在加载当前界面,所以script放到最后

 

import与link的区别

1)从属关系

link是HTML提供的签,除了加载CSS外,还可以定义rel属性等

@import是CSS提供的语法规则,只能用于加载CSS

2)加载的顺序

link引入的css在页面加载的时候会同时被加载

@import引用的CSS会等到页面加载完后再加载
3)兼容性的区别

@import是CSS2.1 提出的,只在IE5+以上才能被识别

link是HTML标签,不存在兼容问题

4)DOM可控性的区别

可以通过js操作DOM,插入link标签来改变样式

由于DOM方法是基于文档的,无法使用@import的方法插入样式

function removeRule(num, index){
    var sheet = document.styleSheets[num];
    if (typeof sheet.deleteRule != 'undefined') {
        sheet.deleteRule(index);
    }else if(typeof sheet.removeRule != 'undefined'){
        sheet.removeRule(index);
    }
}

function addRule(num, selector, selectorText, position){
    //获取要操作的link标签对象
    var sheet = document.styleSheets[num];
    if (typeof sheet.insertRule != 'undefined'){//w3c
        sheet.insertRule(selector + '{' + selectorText + '}', position);
    }else if (typeof sheet.addRule != 'undefined'){//ie
        sheet.addRule(selector, selectorText, position)
    }
}


5)权重的区别

link引入的样式权重大于@import引入的样式意思是:是在link标签中引入的css文件中使用@import时,相同样式将被该css文件本身的样式覆盖

3. 对于em和rem的区别一句话概括:em相对于父元素,rem相对于根元素

4. 天生的inline-block属性的元素

block:块级标签,独占一行,可以设置高和宽;div、li、ul、h1、h2、p

inline-block:不独占一行,可以设置高和宽;img、button、input、TEXTAREA

inline:不独占一行,不可以设置高和宽;lable、span、a、em

5. iframe有什么优缺点

6. ES6解构

var b ={foo:'123',baz:'456',aaa:'000',bbb:'111'}

var  {
    v = '1121',
    foo:nnn, // 别名 nnn=‘123’,foo undefine
    ...rest
} = b

console.log(foo)

7. opercity与rgba的区别

opercity:子元素也会受影响

rgba:只有当前元素透明

8.为什么优先加载CSS

 

9.性能优化有什么方式

10. vue 双向绑定的原理

11.JS哪些操作会造成内存泄漏

12.CSS3 新增加的伪类

13. 平时工作中如何解决问题或者学习

14. 知道哪些盒模型

15. vue修饰符

prevent:阻止默认事件

once:只执行一次

capature:添加事件侦听器时使用事件捕获模式 -->

stop:阻止冒泡

self: 只当事件在该元素本身(而不是子元素)触发时触发回调

16.事件捕获与事件冒泡

17. 小程序框架taro

标题基于Python的自主学习系统后端设计与实现AI更换标题第1章引言介绍自主学习系统的研究背景、意义、现状以及本文的研究方法创新点。1.1研究背景与意义阐述自主学习系统在教育技术领域的重要性应用价值。1.2国内外研究现状分析国内外在自主学习系统后端技术方面的研究进展。1.3研究方法与创新点概述本文采用Python技术栈的设计方法系统创新点。第2章相关理论与技术总结自主学习系统后端开发的相关理论技术基础。2.1自主学习系统理论阐述自主学习系统的定义、特征理论基础。2.2Python后端技术栈介绍DjangoFlask等Python后端框架及其适用场景。2.3数据库技术讨论关系型非关系型数据库在系统中的应用方案。第3章系统设计与实现详细介绍自主学习系统后端的设计方案实现过程。3.1系统架构设计提出基于微服务的系统架构设计方案。3.2核心模块设计详细说明用户管理、学习资源管理、进度跟踪等核心模块设计。3.3关键技术实现阐述个性化推荐算法、学习行为分析等关键技术的实现。第4章系统测试与评估对系统进行功能测试性能评估。4.1测试环境与方法介绍测试环境配置采用的测试方法。4.2功能测试结果展示各功能模块的测试结果问题修复情况。4.3性能评估分析分析系统在高并发等场景下的性能表现。第5章结论与展望总结研究成果并提出未来改进方向。5.1研究结论概括系统设计的主要成果技术创新。5.2未来展望指出系统局限性并提出后续优化方向。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值