目录
1、0.1+0.2===0.3吗?为什么?
不相等。由于计算机底层是基于二进制的,需要事先由十进制转换为二进制存储与运算,这整个转换过程中,类似于0.1、0.2这样的数是无穷无尽的,无法用二进制数精确表示。JavaScript采用的是IEEE 754双精度标准,能够有效存储的位数是52位,所以就需要做舍入操作,这无可避免的会引起精度丢失。另外我们在0.1与0.2相加做对阶、求和、舍入过程中会产生精度的丢失。
2、什么是事件委托?
事件委托就是利用事件冒泡,只定制一个事件处理程序,就可以管理某一类型的所有事件。事件委托,称为事件代理,是JS中很常见的绑定事件的方法。事件委托就是把原来需要绑定在子元素上面的事件委托给父元素,让父元素担当事件监听的职务,原理层DOM元素的事件冒泡。
3、get和post请求的区别?
1.GET在浏览器回退不会再次请求,POST会再次提交请求
2.GET请求会被浏览器主动缓存,POST不会,要手动设置
3.GET请求参数会被完整保留在浏览器历史记录里,POST中的参数不会
4.GET请求在URL中传送的参数是有长度限制的,而POST没有限制
5.GET参数通过URL传递,POST放在Request body中
6.GET参数暴露在地址栏不安全,POST放在报文内部更安全
7.GET一般用于查询信息,POST一般用于提交某种信息进行某些修改操作
8.GET产生一个TCP数据包;POST产生两个TCP数据包
4、实现继承的方式有哪些?
第一就是通过原型链继承
第二是通过构造函数继承 这个是无法使用到父类的原型
第三就是组合继承综合了原型链继承和构造函数继承,将两者的优点结合了起来