黑马程序员技术交流社区
标题:
求学术派大神来解答javascript的问题
[打印本页]
作者:
小Zeor………
时间:
2014-2-18 22:12
标题:
求学术派大神来解答javascript的问题
下面给出两段代码 执行结果一样,但是不同的意义在何处?
代码一:
script language = "javascript">
var square = new Function("x","y","var sum; sum = x*x+y*y;
return sum;");
alert(square(3,2));
</script>
复制代码
代码二:
<script language = "javascript">
function square(x,y)
{
var sum ;
sum = x*x + y*y;
return sum;
}
alert(square(3,2));
</script>
复制代码
这两段代码不同,但是就我看来,看不出第一种写法的意义何在啊?
作者:
小Zeor………
时间:
2014-2-18 22:30
继续自顶
作者:
kkopopo
时间:
2014-2-18 22:55
mark一下!!! 没有深究! 只要区别以为一个是声明式函数,一个是赋值式函数,区别在于在JS的预编译期,声明式函数将会先被提取出来,然后才按顺序执行js代码。具体执行你自己测试一些,这个问题关乎于你想让user打开网页的速度问题吧! 我的跟着学习一下没有深究! 有大大给个专业回答!
作者:
why168
时间:
2014-2-18 23:42
代码一:使用Function构造函数来定义函数,存在一定的性能问题。第一次是常规的解析这条语句,第二次要把函数里的字符串解析成实际的函数。
代码二:常用的函数声明。
最好不用代码一的写法。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2