1、什么是闭包 闭包的优缺点?
闭包是指有权访问另外一个函数作用域中的变量的函数。
闭包的优点.:全局变量可以重复使用,但是容易造成变量污染。
局部变量仅在局部作用域内有效,不可以重复使用,不会造成变量污染。
缺点:比普通函数更占用内存,会导致网页性能变差,在IE下容易造成内存泄露。
2、什么是事件委托?原理是什么?
事件委托也称之为事件代理(Event Delegation)。 是JavaScript中常用绑定事件的常用技巧。
原理:不是每个子节点单独设置事件监听器,而是事件监听器设置在其父节点上,然后利用冒泡原理影响设置每个子节点。
3、window.onload的$(document).ready()的区别?
window.onload必须等到页面内包括图片的所有元素和资源加载完毕后才能执行,
(document).ready ()是DOM加载完毕后就执行,不必等到整个网页资源加载完毕。
4、清除浮动的方法?
1、在结尾处添加空div标签clear:both; 2、利用伪元素after ; 3、父元素使用overflow属性
5、js中typeof()方法的返回值有哪些?
typeof的返回值共有七种:
number, boolean, string, undefined, object, function,symbol.
1. 网页的三层结构是什么?各自有什么作用?
三层结构分别是结构层、表示层和行为层。
作用:结构层:主要用于网页的结构布局,由HTML实现
表示层:主要用于网页内容的样式布局,由CSS实现
行为层:主要用网页交互行为,由javaScript实现
2. MySQL中char和varchar的区别是什么?
Char 固定长度,如果字符串的实际长度小于设置的值,则会用空来补齐;存储效率要高些;最大可以存储255个字符。
Varchar 可变长度,如果字符串的实际长度小于设置的值,则会用字符串的实际长度;存储效率要低些,最大可以存储65535个字符
3. 写出PHP中交换以下两个变量值的代码?
$m = 15;
$n = 20;
$sum = $m;
$m = $n;
$n = $sum;
4. 列举出Javascript中的数据类型有哪些?
String、boolean、null、Objec、number、undenfined.
5. html中行标签和块标签的区别是什么?并各举5个例子
行标签:不支持宽高属性,水平相列,一般不嵌套快标签,例如:a、b、u、l、strong、input、button、span、em
快标签:支持宽高属性,垂直排列,可以嵌套任何标签。例如:h1~h6、div、p、ul、li、form、header、footer、nav
6. 写出使用JavaScript语言 实现以下数组去除重复元素的代码(12分)
var arr = [12,25,8,25,10,12]
var res =[];
for(var i=0;i<arr.length;i++){
if(res .indexOf(arr[i])== -1(
res.push(arr[i])
}
}
Console.log(res); .