全部为选择题,涉及到的知识点有:……
1. 不支持冒泡的元素有哪些
- UI事件
- load
- unload
- scroll
- resize
- 焦点事件
- blur
- focus
- 鼠标事件
- mouseleave
- mouseenter
2. typeof null 的返回值是什么
object,原因呢是因为:
从逻辑角度来看,null值表示一个空对象指针,而这正是使用typeof操作符检测null值时会返回“object”的原因。
《JavaScript高级程序设计(第2版)》P22
3. console.log(’10’+1)和console.log(’10’-1)分别输出什么
分别输出 101 和 9
4. HTTP请求中的safe method 有什么
顾名思义,安全的方法,就是不改变资源的方法都是安全的
HTTP Method | Idempotent | Safe |
---|---|---|
OPTIONS | yes | yes |
GET | yes | yes |
HEAD | yes | yes |
PUT | yes | no |
POST | no | no |
DELETE | yes | no |
PATCH | no | no |
5. ajax的请求都是异步请求吗
非也
6. inline、block、inline-block元素哪个可以设置padding或者margin,设置哪个边有效(上下和左右)
inline
textarea、span、a、img、input、select
特征:
(1)设置宽高无效
(2)对margin仅设置左右方向有效,上下无效;padding设置上下左右都有效,即会撑大空间,行内元素尺寸 由内含的内容决定,盒模型中 padding, border 与块级元素并无差异,都是标准的盒模型,但是 margin 却只有水平方向的值,垂直方向并没有起作用。行内元素的水平方向的padding-left,padding-right,margin- left,margin-right 都产生边距效果,但是竖直方向的padding-top,padding-bottom,margin-top,margin-bottom都 不会产生边距效果。padding设置上下左右都有效,即会撑大空间但是不会产生边距效果。
(3)不会自动进行换行
(4)元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度
block
div、p、ul、h1等标题元素、ol、form、table
特征:
(1)能够识别宽高
(2)margin和padding的上下左右均对其有效
(3)可以自动换行
(4)多个块状元素标签写在一起,默认排列方式为从上至下
inline-block
特征:
(1)不自动换行
(2)能够识别宽高
(3)默认排列方式为从左到右
7. 属于inline、block、inline-block的元素有哪些
常见的有:
inline:a,span,br,i,em,strong,label,q,var,cite,code
inline-block:img,input
block:p,div,p,h1…h6,ol,ul,dl,table,address,blockquote,form
8. 词法分析器的输入是什么
字符串型形式的源程序
9. paserInt(‘0xax’)+paserInt(‘8’)的结果是什么
18
10. cookie的属性有哪些
name
这个显而易见,就是代表cookie的名字的意思,一个域名下绑定的cookie,name不能相同,相同的name的值会被覆盖掉,有兴趣的同学可以试一试,我在项目中切实用到过
value
这个就是每个cookie拥有的一个属性,它表示cookie的值,但是我在这里想说的不是这个,因为我在网上看到两种说法,如下:1.cookie的值必须被URL编码2.对cookie的值进行编码不是必须的,还举了原始文档中所说的,仅对三种符号必须进行编码:分号、逗号和空格
这个东西得一分为二来看,先看下面的图
cookievalue
我在网上看到那么一种说法:
由于cookie规定是名称/值是不允许包含分号,逗号,空格的,所以为了不给用户到来麻烦,考虑服务器的兼容性,任何存储cookie的数据都应该被编码。
domain
这个是指的域名,这个代表的是,cookie绑定的域名,如果没有设置,就会自动绑定到执行语句的当前域,还有值得注意的点,统一个域名下的二级域名也是不可以交换使用cookie的,比如,你设置www.baidu.com和image.baidu.com,依旧是不能公用的
path
path这个属性默认是’/’,这个值匹配的是web的路由,举个例子:
//默认路径
www.baidu.com
//blog路径
www.baidu.com/blog
我为什么说的是匹配呢,就是当你路径设置成/blog的时候,其实它会给/blog、/blogabc等等的绑定cookie
cookie的有效期cookieMaxAge
什么是有效期,就是图中的Expires属性,一般浏览器的cookie都是默认储存的,当关闭浏览器结束这个会话的时候,这个cookie也就会被删除,这就是session(会话储存)。
如果你想要cookie存在一段时间,那么你可以通过设置Expires属性为未来的一个时间节点,Expires这个是代表当前时间的,这个属性已经逐渐被我们下面这个主人公所取代——Max-Age
Max-Age,是以秒为单位的,Max-Age为正数时,cookie会在Max-Age秒之后,被删除,当Max-Age为负数时,表示的是临时储存,不会生出cookie文件,只会存在浏览器内存中,且只会在打开的浏览器窗口或者子窗口有效,一旦浏览器关闭,cookie就会消失,当Max-Age为0时,又会发生什么呢,删除cookie,因为cookie机制本身没有设置删除cookie,失效的cookie会被浏览器自动从内存中删除,所以,它实现的就是让cookie失效。
secure
cookieSecure
这个属性译为安全,http不仅是无状态的,还是不安全的协议,容易被劫持,打个比方,你在手机端浏览网页的时候,有没有中国移动图标跳出来过,闲言少叙,当这个属性设置为true时,此cookie只会在https和ssl等安全协议下传输
提示:这个属性并不能对客户端的cookie进行加密,不能保证绝对的安全性
HttpOnly
如果这个属性设置为true,就不能通过js脚本来获取cookie的值,