2020面试题汇总

使用webkit内核的常见浏览器有?

Safari 

遨游浏览器 3.x                          

搜狗浏览器

阿里云浏览器

QQ浏览器

360浏览器

input标签设置只读的属性是?设置禁用的属性是?

只读属性readonly:<input type="text" readonly="readonly"/>
禁用属性disabled:<input type="text" disabled="disabled" />

内联样式、外联样式、行内样式和!important在一般情况下的优先级排序是?

!important>行内样式>内联样式>外联样式
(内联样式和外联样式优先级相同,所以后写入的优先级高一些)

在td标签中,使用什么属性来合并单元格?

colspan 属性规定单元格可横跨的列数

JavaScript中的两种作用域类型是什么?

全局作用域、局部作用域

数组push方法和shift方法的作用?

push() 方法:向数组的末尾添加一个或多个元素,并返回新的长度。
shift() 方法:把数组的第一个元素从其中删除,并返回第一个元素的值。

阻止事件冒泡的方法?

event.stopPropagation( )
在事件处理函数中,添加return false;

阻止默认事件的方法?

event.preventDefault(); //标准浏览器的阻止默认事件的写法
在事件处理函数中,添加return false;/IE低版本浏览器的写法

关闭浏览器窗口的方法?

window.close()(有兼容性问题,对某些浏览器失效)

浏览器历史记录回退的方法?

history.back();
history.go(-1);

JavaScript中函数的参数都是按什么传递的?

ECMAScript中所有函数的参数都是按值传递的

前端跨域通信的几种方式?

1、JSONP
2、WebSocket
3、CORS 
4、Hash
5、postMessage 

css中让元素隐藏,但是不清除元素的方法是?

1、opacity:0
2、visibility:hidden
3、diaplay:none
4、position:absolute

css盒模型的几个属性?

内容(content)、内边距(padding)、边框(border)、外边距(margin)

js原始数据类型有哪些?

String
Number
Boolean
Null
Undefined

web本地存储技术?

cookie
localStroage
sessionStroage

JavaScript的typeof返回哪些数据类型?

undefined
string
boolean
number
symbol(ES6)
Object
Function

请以缩写方法写出1px直线(实线)、灰色(任意灰色代码值),上面无边框的矩形边框样式

div{
      width: 100px;
      height: 100px;
      border: 1px solid grey;
      border-top: none;
    }

简述JavaScript中this指向?

1:this永远指向一个对象;
2:this的指向完全取决于函数调用的位置;

GET与POST请求方式的区别始什么?

GET把参数包含在URL中,POST通过request body传递参数;
POST比GET更安全,因为GET是将参数直接暴露在URL上,所以不能用来传递敏感信息;
GET请求在URL中传送的参数是有长度限制的,而POST没有有;
对参数的数据类型,GET只接受ASCII字符,而POST没有限制;
GET在浏览器回退时是无害的,而POST会再次提交请求;
GET产生的URL地址可以被Bookmark,而POST不可以;
GET请求会被浏览器主动cache,而POST不会,除非手动设置;
GET请求只能进行url编码,而POST支持多种编码方式;
GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留;
**此外:**
	GET和POST本质上就是TCP链接,并无差别。只是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同。 
	但GET和POST还有一个重大区别,简单的说就是GET产生一个TCP数据包;POST产生两个TCP数据包。
**产生原因**:
	GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);
	POST方式请求,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

因为POST传输需要两步,时间上消耗会多一点,所以看起来GET比POST更有效。但是,据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点,所以谨慎选用。而且并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

什么时候使用GET/POST方式?

以下情况只能使用POST请求:
	1、无法使用缓存文件;
	2、向服务器发送大量数据;
	3、发送包含未知字符的用户输入时,post比get更稳定也更可靠
其他情况下使用POST请求:
	1、做数据添加、修改或删除时
	2、传输数据包含机密信息时
建议使用get方法的情况:
	1、请求是为了查找资源,HTML表单数据仅用来帮助搜索时
	2、请求结果无持续性的副作用时
	3、收集的数据及HTML表单内的输入字段名称总长不超过1024个字符时

请写出以下程序运行结果?

var x = 1;
    y = 0;
    z = 0;
    function add(n){
      n = n + 1;
    }
    y = add(x);
    z = x + y;
    console.log('y1:' + y)//y1:undefined
    console.log('z1:' + z)//z2:NaN
    function add(n){
      n = n + 3;
    }
    y = add(x);
    z = x + y;
    console.log('y2:' + y)//y1:undefined
    console.log('z2:' + z)//z2:NaN
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值