代码改变世界

知识点

2018-12-21 16:08  Lkui  阅读(202)  评论(0)    收藏  举报


1、IE6 BUG的解决方法
  a、css浮动边距加倍错误(双倍边距BUG)的解决办法   该错误只影响ie而不影响其他浏览器,我们可以考虑用hack来解决   解决方法:_display:inline; 

  b、扩展框问题  原因:无法将内容放入固定宽度或固定高度的框中,则框会扩展以适应内容,而不是让内容溢出框外。解决方法:overflow: hidden

  c、png图片的问题,   IE6一下版本不支持png图片的格式;

  d、三像素文本慢移   Ie6里面的banner部分折成三行,  解决方法:在IE6中让最后一个盒子减少三个像素,这就需要用到!important这个关键字了(让其它盒子也可以,那个方便就设那个)或者:zoom:1;

  e、在IE6里,浮动元素的子元素如果定义了高度,则其子元素的宽度是其上一个不浮动的祖先元素的100%,

解决方法:一是不给其子元素设固定高度(只设行高),二是也让这个子元素变成浮动元素。


2、事件绑定和普通事件有什么区别
   简单来说,普通事件中的onclick只支持单个事件,会被其他onclick事件覆盖,而事件绑定中的addEventListener可以添加多个事件,而不用担心被覆盖。并且普通方式绑定事件后,不可以取消。addEventListener绑定后则可以用removeEvenListener取消。


3、split() join() 的区别
  join() 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。
  split(a,b)方法:用于把一个字符串分割成字符串数组. a是必须的,决定个从a这里开始分割
b不是必须的,可选。该参数可指定返回的数组的最大长度 。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。


4、px和em的区别
  px和em都是长度单位,区别是,px的值是固定的,指定是多少就是多少,计算比较容易。em得值不是固定的,并且em会继承父级元素的字体大小。


5、箭头函数和普通函数有什么区别
  箭头函数:
     let fun = () => {
       console.log('lalalala');
     }
   普通函数:
     function fun() {
       console.log('lalla');
    }
  箭头函数相当于匿名函数,并且简化了函数定义。箭头函数有两种格式,一种只包含一个表达式,连{ ... }和return都省略掉了。还有一种可以包含多条语句,这时候就不能省略{ ... }和return。
  箭头函数是匿名函数,不能作为构造函数,不能使用new
  箭头函数的 this 永远指向其上下文的 this ,任何方法都改变不了其指向,如 call() , bind() , apply()
  普通函数的this指向调用它的那个对象


6、href和src有什么区别
  href标识超文本引用,用在link和a等元素上,href是引用和页面关联,是在当前元素和引用资源之间建立联系
  src表示引用资源,表示替换当前元素,用在img,script,iframe上,src是页面内容不可缺少的一部分。


7、webpack原理是什么
  webpack只是一个打包模块的机制,只是把依赖的模块转化成可以代表这些包的静态文件。并不是什么commonjs或者amd之类的模块化规范。webpack就是识别你的 入口文件。识别你的模块依赖,来打包你的代码。至于你的代码使用的是commonjs还是amd或者es6的import。webpack都会对其进行分析。来获取代码的依赖。webpack做的就是分析代码。转换代码,编译代码,输出代码。webpack本身是一个node的模块,所以webpack.config.js是以commonjs形式书写的(node中的模块化是commonjs规范的)
  webpack中每个模块有一个唯一的id,是从0开始递增的。整个打包后的bundle.js是一个匿名函数自执行。参数则为一个数组。数组的每一项都为个function。function的内容则为每个模块的内容,并按照require的顺序排列。