1、html添加样式的几种方式
1)链接外部样式文件:样式文件需额外引入,应在<head.../>元素中增加<link.../>子元素
2)导入外部样式文件:与链接外部样式功能差不多,只是语法存在差别。需要在<style.../>元素中使用@import来执行导入。@import "outer.css”
3)内部样式: 需要放在<style.../>元素定义,每份css样式只控制一份文档
4)行内样式:将样式具体定义到具体的HTML元素,每份css样式只控制单个HTML元素
2、form标签的anctype属性的取值及区别是什么?
3、描述cookies\sesssionStorage\localStorage的区别
注:同源指的是"三个(协议,域名,端口)相同"。协议是http://,域名是www.example.com,端口是80(默认端口可以省略)4、JavaScript创建对象可以使用哪些方式?
https://www.jb51.net/article/117164.htm
5、null/undefined的区别
6、在下面的代码中,数字1-4会以什么顺序输出?为什么会这样输出?
(浅析JavaScript单线程执行机制)
7、请简述原生ajax请求的执行过程
https://blog.csdn.net/qq_empire/article/details/81736664
原生态Ajax使用的步骤,最后告诉面试官,我们在工作中是使用jQuery来实现Ajax请求和处理的。在回答的时候尽量详尽,包括方法的参数的个数,顺序和作用,以免被面试官抓住不放。不给面试官提问的机会,那你的回答就牛逼了!
Ajax是什么
我理解Ajax 是一种异步请求数据的一种技术,对于改善用户的体验和程序的性能很有帮助。
在jquery中
var configObj = {
method //数据的提交方式:get和post
url //数据的提交路劲
async //是否支持异步刷新,默认是true
data //需要提交的数据
dataType //服务器返回数据的类型,例如xml,String,Json等
success //请求成功后的回调函数
error //请求失败后的回调函数
}
$.ajax(configObj);//通过$.ajax函数进行调用。
原生Ajax的使用
1)创建XMLHttpRequest对象,也就是创建一个异步调用对象
2)创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息
3)设置响应HTTP请求状态变化的函数
4)发送HTTP请求
5)获取异步调用返回的数据
6)使用JavaScript和DOM实现局部刷新
8、列举使用过的css/jquery选择器
.基本
·#id 根据给定的ID匹配一个元素。例如:$("#id")
·element 根据给定的元素名匹配所有元素。例如:$("div")·
.class 根据给定的类匹配元素。例如:$(".style1");
·* 匹配所有元素。例如:$("*")
·selector1,selector2,selectorN 将每一个选择器匹配到的元素合并后一起返回。例如:$("#id,div,.style1")
9、块级标签与行内标签的区别(<span>标签和<p>标签的区别)
块级元素具有以下特点:
①总是在新行上开始,占据一整行;
②可以设置width,height,margin,padding属性;
③宽度始终是与浏览器宽度一样,与内容无关;
④它可以容纳内联元素和其他块元素。
行内元素的特点:
①和其他元素都在一行上;
②设置width,height无效(可以设置line-height),水平方向的padding-left和padding-right都会产生边距效果,padding/margin上下无效
③宽度只与内容有关;
④行内元素只能容纳文本或者其他行内元素
10、请列举常见浏览器内核名称及其私有属性css前缀
11、请列举css中常用的几种定位方式
12、列举flex不居中,容器的主要属性
常用属性:
flex-direction(主轴方向。默认row)
flex-wrap(项目在容器轴线排不下是否换行。 默认nowrap)
flex-flow(是前两个属性的缩写。 默认值未row nowrap)
justify-content(项目在容器主轴上对齐方式。默认flex-start)
align-items(项目在交叉轴上如何对齐。默认flex-start)
align-content(多根轴线的对齐方式。默认flex-start)
13、实现响应式布局的方式有哪些?
响应式布局:简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本。这个概念是为解决移动互联网浏览而诞生的。
实现响应式布局的三种方式
1. CSS3-Media Query(最简单的方式,但是无法满足很多需求)
2. 借助原生Javascript(成本高,不推荐使用)
3. 第三方开源框架(比如bootstrap,可以很好的支持浏览器的响应式布局)
有哪些响应式前端框架?Foundation、skeljs、Grid System、Bootstrap
14、请简述对MVVM框架技术的了解,有哪些主流的MVVM框架?
MVVM是Model-View-ViewModel的缩写。mvvm是一种设计思想。Model 层代表数据模型,也可以在Model中定义数据修改和操作的业务逻辑;View 代表UI 组件,它负责将数据模型转化成UI 展现出来,ViewModel 是一个同步View 和 Model的对象。
主流的MVVM框架: vue, avalon, angular
15、队列和栈的区别,是否了js解相关函数?
队列是先进先出,有出口和入口
栈就像一个箱子,先进后出
队列实现:
shift() : 删除集合中第一个元素,并返回这个元素的值
unshift() :在集合开头添加新元素(一个或多个均可),并返回新的集合的长度
堆栈实现:
pop() :删除集合的最后一个元素,并返回元素的值
push() :将元素添加到集合的结尾
16、用js编写函数,确定一个字符串是不是回文
17、用js编写斐波那契数列(1、1、2、3、5、8、13、21、34、···)的计算函数
斐波那契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)。
网友评论