1.用JavaScript编写一段代码,实现去掉数组内一个重复的元素。
```javascript
function unique(arr){
for(var i=0;i<=arr.length;i++){
for(var j=i+1;j<=arr.length;j++){
if(a[i]=a[j]){arr.splice(j,1);j--;}
}
}
return arr;
}
2.用JavaScript编写一段代码,实现函数内每2秒调用自己这个函数,200次以后停止。
```javascript
<script>
var i=0;
var time1=setInterval(function(){i++;console.log(i);if(i==200){clearInterval(time1)}},2000);
</script>
3.用JavaScript编写一段代码,实现用5,4,3,2,1数字组成互不相同且不重复的3位数。
<script>
for(var i = 1; i <= 5; i ++){
for(var j = 1; j < 5; j ++){
for(var k = 1; k < 5; k ++){
if(i != j && j != k && k != i){
document.write("" + i + j + k + "<br />");
}
}
}
}
</script>
4.javascript里的call()和apply()方法的作用和区别?
5.
6.
7.什么是立即执行函数
- 立即执行函数是什么立即执行函数就是
声明一个匿名函数
马上调用这个匿名函数
上面是一个典型的立即执行函数。
首先声明一个匿名函数 function(){alert(‘我是匿名函数’)}。
然后在匿名函数后面接一对括号 (),调用这个匿名函数。
那么为什么还要用另一对括号把匿名函数包起来呢?
其实是为了兼容 JS 的语法。
如果我们不加另一对括号,函数就没有函数名 语法错误
立即执行函数有什么用?
只有一个作用:创建一个独立的作用域。
这个作用域里面的变量,外面访问不到(即避免「变量污染」)。
8.null 和 undefined 区别
9.
<script>
var foo=1
function a(){
console.log(foo)
**var** foo=100
console.log(foo)
}
a()
</script>
输出多少 为什么
undefined
100
局部作用域
编译之前在function里面找有没有foo这个值 发现有 提前声明了 var foo=undefined 然后第一次运行 时undefined 然后oo=100;然后第二次输出就是100
10.
<script>
var foo=1
function a(){
console.log(foo)
foo=100
console.log(foo)
}
a()
console.log(foo)
</script>
输出是 1 100 100