js基础面试
1.变量先声明后使用
2.全局变量和局部变量
<script> ???var str =‘global‘; ???function t(){ ???????alert(str); ???????var str =‘local‘;//ndefined ???????alert(str); ???} ???t();//undefined,local ???var str =‘global‘; ???if(true){ ???????var str =‘local‘; ???} ???alert(str);//local</script>
js函数基础
函数声明变量提升
表达式函数定义
函数体语句块
this
函数 prototype
函数实例
<script> ???function foo () { ???????getname = function(){alert(3)}; ???????return this; ???} ???foo.prototype.getname = function() { ???????alert(‘prototype.getname‘); ???}; ???// var foo = function(){ ???// ????alert(2); ???// } ???// function foo(){ ???// ????alert(2.2); ???// } ???// foo();//2 ???// foo().getname() ???// new foo().getname();//prototype.getname ???new ?new foo().getname();//prototype.getname ???// 先执行new Foo(),变成了 new Foo的实例对象.getName(), ????// 然后再执行 Foo的实例对象.getName(),又回到了方式3函数块,结果为“google”, ???// 最后执行new Foo的实例对象。</script>
js基础面试题
原文地址:http://www.cnblogs.com/alan-alan/p/7497123.html