面试总结

栏目: CSS · 发布时间: 5年前

内容简介:面试过程中遇到的问题,自己总结整理,当做一个自省和知识的梳理。alt:不能显示图像时的用户代理,用来指定替换文字

面试过程中遇到的问题,自己总结整理,当做一个自省和知识的梳理。

一 css问题:

1 浏览器内核以及优缺点?

面试总结

2 html的title和alt有什么区别?

alt:不能显示图像时的用户代理,用来指定替换文字

title:为设置该属性的元素提供建设性的信息

3 行内元素?块级元素?盒模型?

行内元素有:span,a,button

块级元素:div,p

盒模型:利用box-sizing设置

4 css的reset的作用和用途

为了让页面获得浏览器跨浏览器的兼容性,需要用重置文件css代码覆盖浏览器默认的样式来统一样式。

5 css选择器有哪些?优先级如何?

id选择器,类选择器,标签选择器

!important>行内样式>id>.>标签>*

6 sass和less的区别

sass和less主要区别在于实现方式, less是基于JavaScript的在客户端处理 所以安装的时候用npm,sass是基于 ruby 所以在服务器处理。当然还有一些语法上的不同,可以对比看一下两个文档。

二 js问题:

1 ajax使用步骤

  • 创建xmlhttprequest对象
  • 设置回调函数
  • 使用xmlhttprequest对象的open()和send()方法发送资源请求给服务器
  • 使用xmlhttprequest对象的responseText或responseXML属性获得服务器的响应
  • 在回调函数中针对不同的响应状态进行处理

2 jsonp跨域请求

利用在页面中创建<script>节点的方法向不同域提交HTTP请求的方法称为JSONP,这项技术可以解决跨域提交Ajax请求的问题。只支持get请求类型。

3 几种跨域请求方式

同源策略的限制,即必须同一协议、同一域名和同一端口才可以进行请求数据交互

  • 基于Script标签请求
  • 基于jQuery封装的ajax方法实现跨域
  • 基于iframe实现跨域请求子域数据

4 类型检测typeof和instanceof区别

typeof操作符返回一个字符串,表示未经计算的操作数的类型。

instanceof运算符用于测试构造函数的prototype属性是否出现在对象的原型链中的任何位置

5 localStorage,sessionStorage和cookie,session的区别

cookie用来跟踪浏览器用户身份的会话方式,大小4kb,保存在浏览器端;

session用来跟踪浏览器用户身份的会话方式,没有大小限制,保存在服务器端;

localStorage的生命周期是永久的,关闭页面或浏览器之后localStorage中的数据也不会消失。localStorage除非主动删除数据,否则数据永远不会消失。大小5MB;

sessionStorage的生命周期是在仅在当前会话下有效。但是sessionStorage在关闭了浏览器窗口后就会被销毁。同时独立的打开同一个窗口同一个页面,sessionStorage也是不一样的。大小5MB;

6 js的typeof返回的数据类型有哪些?

typeof操作符返回一个字符串,表示未经计算的操作数的类型

默认数据类型有

7 js如何阻止事件冒泡和默认事件?

event.stopPropagation();//阻止冒泡事件,但是不阻止默认事件
event.preventDefault();//阻止事件默认行为
return false;//原生只阻止默认事件,jQuery中阻止冒泡和默认事件

8 js编写一个数组去重?

9 检测变量作用域

注意观察两者的不同

var arr=[]
for (var i=0;i<10;i++) {
   arr[i]=function (){
     console.log(i);
   }
}
arr[6]();//====>10
var arr=[]
for (let i=0;i<10;i++) {
   arr[i]=function (){
     console.log(i);
   }
}
arr[6]();//====>6

10 关于typeof()类型检测

let a = 1;
let b = [1];
let c = "1";
let d = null;
let f = new Object();
let e = function(){};
let g = false;
 
console.log(typeof a);//====>number
console.log(typeof b);//====>object
console.log(typeof c);//====>string
console.log(typeof d);//====>object
console.log(typeof f);//====>object
console.log(typeof e);//====>function
console.log(typeof g);//====>boolean

11 splice()方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。

toString()方法返回一个表示该对象的字符串

var months = ['Jan', 'March', 'April', 'June'];
months.splice(2,3, 'Feb');
console.log(months.toString());

12 关于异步处理函数

function promise1(ms){
	return new Promise(function(resolve, reject) {
  		setTimeout(function() {
    		resolve(ms);
  		}, 1000);
	});
}
 
async function func2(str,ms){
	await promise1(ms);
	console.log(str)
}
 
func2('hello','10')//===>10  hello

三 vue问题:

1 vue生命周期

面试总结
lifecycle

2 vue组件注册方式

局部注册

var ComponentA = { /* ... */ }
var ComponentB = { /* ... */ }
new Vue({
  el: '#app',
  components: {
    'component-a': ComponentA,
    'component-b': ComponentB
  }
})

全局注册

Vue.component('component-a', { /* ... */ })
Vue.component('component-b', { /* ... */ })
Vue.component('component-c', { /* ... */ })
 
new Vue({ el: '#app' })

3 v-show和v-if指令的相同点和不同点?

v-show通过display:none控制

v-if通过dom元素生成去除控制

4 v-router有哪几种导航钩子?

前置守卫beforeEach

后置钩子afterEach

组件内的导航钩子主要有这三种:beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave

5 vuex是什么?

vuex是核心状态管理模式


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

R语言实战

R语言实战

卡巴科弗 (Robert I.Kabacoff) / 高涛、肖楠、陈钢 / 人民邮电出版社 / 2013-1 / 79.00元

数据时代已经到来,但数据分析、数据挖掘人才却十分短缺。由于“大数据”对每个领域的决定性影响, 相对于经验和直觉,在商业、经济及其他领域中基于数据和分析去发现问题并作出科学、客观的决策越来越重要。开源软件R是世界上最流行的数据分析、统计计算及制图语言,几乎能够完成任何数据处理任务,可安装并运行于所有主流平台,为我们提供了成千上万的专业模块和实用工具,是从大数据中获取有用信息的绝佳工具。  本书从解决......一起来看看 《R语言实战》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具