本文结合自己前端日常开发中,经常用到的且非常重要的一些知识点,进行了汇总,这是本系列第一篇。
创新互联主营巴南网站建设的网络公司,主营网站建设方案,app软件开发公司,巴南h5微信平台小程序开发搭建,巴南网站营销推广欢迎巴南等地区企业咨询
1.css禁用鼠标事件
- .disabled {
- pointer-events: none;
- cursor: default;
- opacity: 0.6;
- }复制代码
2.get/post的理解和他们之间的区别
http
http方法:
- // 查询字符串(名称/值对)是在 POST 请求的 HTTP 消息主体中发送的
- POST /test/demo_form.asp HTTP/1.1
- Host: w3schools.com
- name1=value1&name2=value2
GET和POST的区别
3.实现条纹网格的方式
- nth-child(even/odd)
- // odd表示基数,此时选中基数行的样式,even表示偶数行
- .row:nth-child(odd){
- background: #eee;
- }
- nth-of-type(odd)
- .row:nth-of-type(odd){
- background: #eee;
- }
- 渐变实现linear-gradient
- .stripe-bg{
- padding: .5em;
- line-height: 1.5em;
- background: beige;
- background-size: auto 3em;
- background-origin: content-box;
- background-image: linear-gradient(rgba(0,0,0,.2) 50%, transparent 0);
- }
4.js求平面两点之间的距离
- // 数据可以以数组方式存储,也可以是对象方式
- let a = {x:'6', y:10},
- b = {x: 8, y: 20};
- function distant(a,b){
- let dx = Number(a.x) - Number(b.x)
- let dy = Number(a.y) - Number(b.y)
- return Math.pow(dx*dx + dy*dy, .5)
- }
5.css禁止用户选择
- body{
- -webkit-touch-callout: none;
- -webkit-user-select: none;
- -khtml-user-select: none;
- -moz-user-select: none;
- -ms-user-select: none;
- user-select: none;
- }
6.数组去重
- // indexOf实现
- var array = [1, 1, '1'];
- function unique(array) {
- var res = [];
- for (var i = 0, len = array.length; i < len; i++) {
- var current = array[i];
- if (res.indexOf(current) === -1) {
- res.push(current)
- }
- }
- return res;
- }
- console.log(unique(array));
- // 排序后去重
- var array = [1, 1, '1'];
- function unique(array) {
- var res = [];
- var sortedArray = array.concat().sort();
- var seen;
- for (var i = 0, len = sortedArray.length; i < len; i++) {
- // 如果是第一个元素或者相邻的元素不相同
- if (!i || seen !== sortedArray[i]) {
- res.push(sortedArray[i])
- }
- seen = sortedArray[i];
- }
- return res;
- }
- console.log(unique(array));
- // filter实现
- var array = [1, 2, 1, 1, '1'];
- function unique(array) {
- var res = array.filter(function(item, index, array){
- return array.indexOf(item) === index;
- })
- return res;
- }
- console.log(unique(array));
- // 排序去重
- var array = [1, 2, 1, 1, '1'];
- function unique(array) {
- return array.concat().sort().filter(function(item, index, array){
- return !index || item !== array[index - 1]
- })
- }
- console.log(unique(array));
- // Object键值对
- var array = [{value: 1}, {value: 1}, {value: 2}];
- function unique(array) {
- var obj = {};
- return array.filter(function(item, index, array){
- console.log(typeof item + JSON.stringify(item))
- return obj.hasOwnProperty(typeof item + JSON.stringify(item)) ? false : (obj[typeof item + JSON.stringify(item)] = true)
- })
- }
- console.log(unique(array)); // [{value: 1}, {value: 2}]
- // ES6 Set实现
- var unique = (a) => [...new Set(a)]
7.什么是CDN和CDN的好处
好处:
1、多域名加载资源 一般情况下,浏览器都会对单个域名下的并发请求数(文件加载)进行限制,通常最多有4个,那么第5个加载项将会被阻塞,直到前面的某一个文件加载完毕。因为CDN文件是存放在不同区域(不同IP)的,所以对浏览器来说是可以同时加载页面所需的所有文件(远不止4个),从而提高页面加载速度。
2、文件可能已经被加载过并保存有缓存 一些通用的js库或者是css样式库,如jQuery,在网络中的使用是非常普遍的。当一个用户在浏览你的某一个网页的时候,很有可能他已经通过你网站使用的CDN访问过了其他的某一个网站,恰巧这个网站同样也使用了jQuery,那么此时用户浏览器已经缓存有该jQuery文件(同IP的同名文件如果有缓存,浏览器会直接使用缓存文件,不会再进行加载),所以就不会再加载一次了,从而间接的提高了网站的访问速度
3、高效率 你的网站做的再NB也不会NB过百度NB过Google吧?一个好的CDNs会提供更高的效率,更低的网络延时和更小的丢包率。
4、分布式的数据中心 假如你的站点布置在北京,当一个香港或者更远的用户访问你的站点的时候,他的数据请求势必会很慢很慢。而CDNs则会让用户从离他最近的节点去加载所需的文件,所以加载速度提升就是理所当然的了。
5、使用情况分析 一般情况下CDNs提供商(如百度云加速)都会提供数据统计功能,可以了解更多关于用户访问自己网站的情况,可以根据统计数据对自己的站点适时适当的做出些许调整。
6、有效防止网站被攻击 一般情况下CDNs提供商也是会提供网站安全服务的
8.正则表达式匹配手机号
- function checkPhone(){
- if(!(/^1[34578]\d{9}$/.test(phone))){
- alert("手机号码有误,请重填");
- return false;
- }
- }
9.如何提高首频加载速度
10.浏览器内核(渲染引擎)
11.浏览器渲染过程及优化建议
浏览器渲染过程
优化建议
减少reflow和repaint
12. 页面导入样式时,使用link和@import有什么区别?
13. 简述一下你对HTML语义化的理解?
14. 请描述一下 cookies,sessionStorage 和 localStorage 的区别?
15. iframe有那些缺点?
16. 网页验证码是干嘛的,是为了解决什么安全问题?
17. 介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同的?
18. position的值relative和absolute定位原点是?
19. 经常遇到的浏览器的兼容性有哪些?原因,解决方法是什么,常用hack的技巧 ?
20. CSS优化、提高性能的方法有哪些?
21. 如何修改chrome记住密码后自动填充表单的黄色背景 ?
- input:-webkit-autofill, textarea:-webkit-autofill, select:-webkit-autofill {
- background-color: rgb(250, 255, 189); /* #FAFFBD; */
- background-image: none;
- color: rgb(0, 0, 0);
- }
当前题目:前端开发中不可忽视的知识点汇总(一)
标题URL:http://www.shufengxianlan.com/qtweb/news32/545132.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联