Web前端常见问题,以及相关知识

1-解决第一次点击或轮播时,没有transition效果

    /* left=0解决第一次点击没有轮播效果

    (原因:未设置的话,初始left未知,

    点击按钮后相当于给#Photo1-1添加imgList.style.left=-1200*i +"px",

    只有修改left属性才会产生transition效果)*/


 

2-解决a标签跳转链接为空时,取消自动刷新页面

    <!-- 一个#会滚到顶部,改成###则不会 -->

    <!-- <a href='javascriptL:;'></a> -->


 

3-解决var声明后,后续的js事件,i不被保存

    改成let i;产生块级作用域,此时i存在局部变量的块级作用域i


 

4-解决多个js中,只有最后一个js才生效

    1.如果放在head中,则把所有js代码统一放到一个js中(放head中,js内部要写...window.onload()=funciton(){})

    2.如果放在body中,则成立(js内部不需要加....window.onload....)

    3.使用jquery

5- function Phone(){   //函数对象

}  

    方法和属性添加在Phone中,但不在显式原型prototype

    Phone.name='手机'

    Phone.change=function(){}

    let nokia=new Phone()

    console.log(nokia.name) xxxx实例对象无,

    nokia.change()          xxxx实例对象无,

    运用class类

    class Person{

        static name1='手机1'    //函数对象有,可以直接访问,放在函数对象原型的constructor里

        name2='手机2'           //实例对象可以直接访问

        constructor(){

            this.d='111'        //等价于上面的name2='手机2'

        }

    }

    Person.name3='手机3' 等价于 上面的static .....

    X1.__proto__.constructor    //实例对象X1可以通过隐式原型->函数对象的原型,

                                //再访问构造器,获取函数对象的属性


 

6-一般子类继承函数对象的方法后,要将子类的原型链用constructor指向自己

    SmartPhone.prototype=new Phone()

    SmartPhone.prototype.constructor=SmartPhone

7-(===与Object.is(),两种比较两个值是否完全相等的方法)

    Object.is()类似于===,

        但是,===不能比较NaN,NaN===NaN->false(NaN于任意数值用===比较都为false)

        而Objec.is(NaN,NaN)->true

9-“./”代表当前路径     "../"代表上级目录      "/"代表根目录

10-获取和设置元素的top和left值

    第一种方法,比较简单,就是直接通过obj.style.left和obj.style.top,

    但是有局限性,这种获取的方法只能获取到行内样式的left和top的属性值,不能获取到style标签和link 外部引用的left和top属性值

    第二种方法 只读,可以获取所有style样式,存在兼容性问题,在标准浏览器中可以通过window.getComputedStyle(对象,null).left方法来获取元素的left和top的属性值。而在IE浏览器上则是采用obj.currentStyle.left方法来获取属性值。这两种方式都是只读的。

11-在js中获取元素注意事项

    通过let box1=document.getElementsByClassName('box1')  获取的是一个伪数组对象

        注意:类不唯一,可能多个元素使用,所以使用时先确定

        例如只有一个时

        let box1=document.getElementsByClassName('box1')[0]===let box1=document.getElementById('bb')

    通过let box1=document.getElementById('bb')是一个document对象的方法,可以通过它来获得指定id的html元素。

12-obj[key].obj['key'],obj.key的区别

    1.obj[key] : key代表的是循环中的一个(变量)

    2.obj['key'] : key代表的是obj的一个属性,obj['key']即代表的是取obj的key(属性值)

    3.obj.key : 此时obj.key相当于obj['key'],key代表的是obj的一个(属性)

   

13-mouseleave 与mouseout

    mouseleave事件是各元素各自触发,不是由子元素冒泡而来

    而mouseout是由子元素冒泡而来(阻止冒泡false)

14-原型链

    1.实例对象的隐式原型->函数对象的显式原型

    2.每一个函数function x(){}都是Funtion的实例对象

    3.每一个函数的显式原型X.prototype都是对象(Object)的实例

    4.隐式原型是由低向高寻找

    5.(而Function自身循环)Function的隐式原型指向Function显式原型=Function原型

 

 

绿色:指向实例对象

蓝色:指向原型对象(显式原型对象)

黑色:指向隐式原型对象

   

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Web前端开发需要掌握的网络基础知识包括: - HTML: 超文本标记语言,用于描述网页的结构 - CSS: 层叠样式表,用于控制网页的外观 - JavaScript: 用于控制网页的行为 - HTTP: 超文本传输协议,用于在浏览器和服务器之间传输数据 - HTTPS: 安全的HTTP协议,用于在浏览器和服务器之间传输加密数据 - AJAX: 异步javascript和XML,用于在网页上实现异步数据交互 - API: 应用程序编程接口,用于网页和服务器之间传输数据 - IP地址,DNS,TCP/UDP,端口号,这些都是基础网络知识 ### 回答2: Web前端开发需要掌握以下网络基础知识: 1. HTTP协议:了解HTTP协议的基本概念、请求方法、状态码、报文格式等。掌握HTTP请求和响应过程,以及常见的HTTP头部字段。 2. 网络通信基础:了解TCP/IP协议族的基本原理和工作机制,包括IP地址、域名解析、端口等。理解TCP和UDP协议的区别和特点。 3. DNS解析:了解域名系统(DNS)的作用和工作原理,包括域名解析过程、DNS缓存等。掌握如何配置和管理域名。 4. 网络安全:了解网络安全的基本概念,包括跨站脚本攻击(XSS)、跨站请求伪造(CSRF)、SQL注入等常见的网络安全问题。学习如何防范和处理这些安全漏洞。 5. WebSocket:了解WebSocket协议的基本原理和特点,能够使用WebSocket实现实时通信功能。 6. 前后端交互:掌握AJAX技术,了解JSON、XML等数据格式的基本概念。能够使用XMLHttpRequest对象向服务器发送异步请求,获取并处理服务器返回的数据。 7. 网络调试工具:掌握常用的网络调试工具,如浏览器开发者工具、Postman等,能够利用这些工具进行网络请求的调试和分析。 8. 前端性能优化:了解前端性能优化的基本原则和常用方法,如压缩资源、合并文件、使用CDN等。能够通过优化网络请求和渲染流程来提升网页的加载速度和响应性能。 总之,掌握了这些网络基础知识,能够更好地理解Web前端开发中的网络交互过程,解决常见的网络问题,并进行性能优化,从而提供更好的用户体验。 ### 回答3: Web前端开发需要掌握以下网络基础知识: 1. HTTP协议:了解HTTP协议的工作原理和常见的请求方法(GET、POST等),了解HTTP头部信息和状态码的含义,以及HTTP的持久连接和缓存等相关概念。 2. HTML和CSS:熟悉HTML和CSS的基本语法和常用标签,了解HTML文档的结构和CSS样式的应用方式,能够根据设计稿实现页面的布局和样式。 3. JavaScript:熟悉JavaScript的基本语法和常用的DOM操作,了解事件处理、Ajax和跨域请求等基本概念,能够编写简单的交互逻辑和动态网页。 4. 网络安全:了解常见的网络攻击方式(如XSS和CSRF)以及相应的防御方法,熟悉HTTPS协议的工作原理和使用方式,能够编写安全性较高的前端代码。 5. 前端性能优化:了解前端页面加载的过程和性能优化的方法,包括减少HTTP请求、压缩和合并静态资源、使用缓存、异步加载等。 6. 浏览器原理:了解浏览器的工作原理,包括渲染引擎的处理流程、页面解析和布局、渲染性能优化等,能够针对不同浏览器进行兼容性处理。 7. 前端框架和工具:熟悉常用的前端框架和工具(如React、Vue、Webpack等),了解它们的工作原理和使用方式,能够快速搭建和优化项目。 综上所述,掌握以上网络基础知识能够使前端开发者更好地理解和应用Web技术,提高开发效率和网页性能,并且能够处理一些网络安全和兼容性问题

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值