面试8

1.如何理解HTML语义化

语义化是指根据内容的结构化(内容语义化),选择合适的标签(代码语义化),便于开发者阅读和写出更优雅的代码的同时,让浏览器的爬虫和机器很好的解析。

好处:

有利于SEO,有助于爬虫抓取更多的有效信息,爬虫是依赖于标签来确定上下文和各个关键字的权重。

语义化的HTML在没有CSS的情况下也能呈现较好的内容结构与代码结构

方便其他设备的解析

便于团队开发和维护

如何做:

  • 尽可能少的使用无语义的标签div和span;
  • 在语义不明显时,既可以使用div或者p时,尽量用p, 因为p在默认情况下有上下间距,对兼容特殊终端有利;
  • 不要使用纯样式标签,如:b、font、u等,改用css设置。
  • 需要强调的文本,可以包含在strong或者em标签中(浏览器预设样式,能用CSS指定就不用他们),strong默认样式是加粗(不要用b),em是斜体(不用i);
  • 表单域要用fieldset标签包起来,并用legend标签说明表单的用途;
  • 每个input标签对应的说明文本都需要使用label标签,并且通过为input设置id属性,在lable标签中设置for=someld来让说明文本和相对应的input关联起来。

2.深拷贝与浅拷贝
深浅拷贝的区别只适用于array【数组】和object【对象】。
“深拷贝”,就是能够实现真正意义上的数组和对象的复制,只要递归调用”浅拷贝”就行了。
☆数组拷贝情况:
浅拷贝:相当于使两个数组指针指向相同的地址,任一个数组元素发生改变,影响另一个。
拷贝:两数组指针指向不同的地址,数组元素发生改变时不会相互影响。
☆对象拷贝情况:
浅拷贝:只拷贝对象的第一层属性,对于属性中包含的属性不会复制;由于JavaScript对象均以地址的方式存 贮,所以浅复制导致多个对象的属性均指向同一块地址。
深拷贝:对对象的每一层属性进行递归复制,深层次的属性也不会指向同一块地址【同一个对象】。


3.对websocket的了解(并不了解)
websocket是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。


 
 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值