1.将一个变量放在外面和放在函数中的区别?
•将一个变量放在外面,一般称之为全局变量:当前页面内有效
•将一个变量放在一个函数中,一般称之为局部变量:只在函数内有效
•若定义的变量没使用var,则为全局变量
2.“==”和“===”的不同?
•==表示相等:只要值相等就可以了,数据类型不一定相等(会自动做类型转换)
•===表示全等于:比较的时候必须值和数据类型都相等才相等
3.
<script>
var fun = function(){
this.name = 'peter';
return {
name: 'jack'
};
}
var p = new fun();
console.log(p.name);
</script>
- 高级语言构造函数是没有return的
- js比较特殊,js构造函数本身就是一个函数,所以拥有函数的一切的特性
- 如果return一个对象,则new的时候返回的是return的对象
<script>
var fun2 = function(){
this.name = 'peter';
return 'jack';
}
var p2 = new fun2();
console.log(p2.name);
</script>