1.html和cssjavascript
引入 css 有哪几种方式
1.使用<link>标签,引入外部CSS文件(1.经过@import,引入CSS文件(性能较差) 2.将css的样式代码放在html文档的<style></style>标签中,引入css) 3.内联样式(标签内部书写)
position 属性有哪些值,分别什么含义
1.position: relative;相对定位(相对于自身) 2.position: absolute;绝对定位(相对于最近一个有定位的父元素偏移) 3.position: fixed;固定定位(相对于浏览器窗口) 4.position:static:默认值
css 响应式布局
1.接在link中判断设备的尺寸,而后引用不一样的css文件(<link rel="stylesheet" type="text/css" href="styleB.css" media="screen and (min-width: 600px) and (max-width: 800px)">) 2.直接写在<style>标签里(@media screen and (max-width: 600px) { /*当屏幕尺寸小于600px时,应用下面的CSS样式*/ .class { background: #ccc; } })
flex:1是什么意思
1.让全部弹性盒模型对象的子元素都有相同的长度,且忽略它们内部的内容
CSS 弹性布局,哪些地方用到过
1.flex布局
如何实现不定宽高水平和垂直居中
1.最简单的flex布局 display: flex; justify-content: center; align-items: center; 2.利用table-cell 外层容器 display:table-cell; text-align:center; vertical-align:middle; 内部元素 vertical-align:middle; display:inline-block; 3.使用CSS3 transform 外层容器 display:relative 内部元素 transform: translate(-50%,-50%); position: absolute; top: 50%; left: 50%;
什么是盒子模型
由content、padding、border、margin组成的元素就是盒子模型,用来设置元素在网页中的大小和位置。
2.js问题css
const 和 let 区别,能够改变 const 定义的某个对象的属性吗
let与const都是只在声明所在的块级做用域内有效。 let:无变量提高(未到let声明时,是没法访问该变量的) const:无变量提高,声明一个基本类型的时候为常量,不可修改;声明对象能够修改 const arr = {name:'小可爱', age:'21'} arr.name = '萱萱' console.log(arr) 由于对象是引用类型的,arr中保存的仅是对象的指针,这就意味着,const仅保证指针不发生改变,修改对象的属性不会改变对象的指针,因此是被容许的。也就是说const定义的引用类型只要指针不发生改变,其余的不论如何改变都是容许的。
对闭包的理解,以及哪些地方用过闭包,以及闭包的缺点
闭包 是指有权访问另外一个函数做用域中的变量的函数,建立闭包的最多见的方式就是在一个函数内建立另外一个函数,经过另外一个函数访问这个函数的局部变量 1.函数嵌套函数 2.函数内部能够引用外部的参数和变量 3.参数和变量不会被垃圾回收机制回收 优势是能够避免全局变量的污染,变量和方法私有化,不让外部修改这些属性 缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易形成内存泄露
对跨域了解吗,jsonp 的限制
跨域就是因为JavaScript同源策略的限制,使得a.com域名下的js没法操做b.com或c.a.com域名下的对象或数据。简单理解同一个 域名、相同端口、相同协议! JSONP(JSON with Padding),就是异步请求跨域的服务器端时,不是直接返回数据,而是返回一个js方法,把数据做为参数 jsonp只支持get请求而不支持post请求 在登陆模块中须要用到session来判断当前用户的登陆状态,这时候因为是跨域的缘由,先后台的取到的session是不同的,那么就不 能就行session来判断.
1-10之间的随机数
var num=Math.floor(Math.random()*10+1);
javascript的typeof返回哪些数据类型
string,boolean,number,undefined,function,object
ES6 用到过吗,新增了哪些东西,你用到过什么
定义变量加入了 let const 箭头函数 Array.from() 将类数组对象与可遍历对象转换为数组 类class
箭头函数,箭头函数的特色,应该是 this 的指向
箭头函数是匿名函数,不绑定本身的this,arguments,super,new.target 箭头函数会捕获其所在上下文的this值,做为本身的this值,在使用call/apply绑定时,至关于只是传入了参数,对this没有影响
了解 MVVM 吗,和 MVC 的区别对象和类的区别,举个现实中的例子html
你理解的面向对象java
说一下原型链json
ES6 新增的 set() 和 map() 有什么区别跨域
数组去重数组
ES6:Array.from(new Set(arr)); <script type="text/javascript"> let arr = ['1',2,1,3,5,6,5] let arrString = arr.toString() console.log(arrString) arrSplit = arr1.split(',') // 把一个字符串分割成字符串数组。 //join() 把数组中的全部元素放入一个字符串。 console.log(arrSplit) let set = new Set(arrSplit) console.log(set) let newArr = Array.from(set) console.log(newArr) </script>
哪些方法会改变原数组
shift:将第一个元素删除而且返回删除元素,空即为undefined unshift:向数组开头添加元素,并返回新的长度 pop:删除最后一个并返回删除的元素 push:向数组末尾添加元素,并返回新的长度 reverse:颠倒数组顺序 sort:对数组排序 splice:splice(start,length,item)删,增,替换数组元素,返回被删除数组,无删除则不返回
深拷贝和浅拷贝async 和 await 了解吗,(不太了解,只知道返回的是 promsie 对象)
call() 和 apply() 的区别和做用?浏览器
区别:apply()与call()做用没有区别,用法与call()方法稍有区别,就是call()的第二个参数(调用函数使用的参数),是一个一个传入的;而apply()的第二个参数的值是使用数组的形式传入的 做用:在Javascript中,每一个函数都包含两个非继承而来的方法,call和apply。这两个方法的用途都是在特定的做用域中调用函数,实际上等于设置函数体内的this对象的值。 apply方法接收两个参数,第一个参数是在其中运行函数的做用域,第二个是一个参数数组或者arguments对象。 call方法与apply方法做用相同,第一个参数也相同,区别在于,其他的参数须要逐个列出。 apply(thisArg, argArray); call(thisArg[,arg1,arg2…]); 是使用call仍是apply要看具体的状况。若是你知道全部参数或者参数的数量很少,可使用call; 若是参数的数量不肯定,或者数量很大,或者你收到的是一个数组或者是个arguments对象,则须要使用apply。