关于js语法问题,大神请进! js 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.new Function("return"+date)是用字符串为函数内的代码来创建个匿名函数,函数后面的()实际上是执行函数的运算符。这要是用于执行字符串内的代码还能写成return eval(date);2.js中的函数和java,C#中的函数不一样js中的函数其实是一种数据,与数值,数组和字符串是一样的。可以赋值传递给变量,设置属性等一个函数后面的()实际上是执行函数的运算符所以在赋值传递函数时后面是不加()的3.自己查“闭包”一词 就个人理解说一下看法,欢迎高手们拍砖。1.rerurn(new Function("return"+date))();还可以: rerurn(eval("return"+date))();为什么这么写的原因是为了使用系统内置函数对象来构建一个函数,目的就是为了简写某些字符串。但不推荐这样做,这样是有风险的:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions_and_function_scope2.var a = { "aaa" : a, "bbb" : b, "ccc" : c }不能写成c()的原因是,c()是一个结果(值),c是一个引用指向(址)。而一般写在a里边的是为了让a去得到这个结果,不是ccc这儿就得到结果,比如:a.ccc();而不是a.ccc;这是一种习惯,不是一个规则。3.function a(){ function b()}一般也可以拆开写,比如function a(){}; function b(){},只所以写在里边的原因,个人猜测是为了保证函数名的唯一或可访问。如果放在外边,有可能会被其它模块代码影响。比如某另外一个.js中也有同样的b名字的函数。 http://www.2ality.com/2014/01/eval.html这条是送的。 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions_and_function_scope 将函数当做值传递给变量,那么该函数什么时候会调用呢 ?初始化变量,引用变量,还是其它?当要执行那个函数的时候,又该怎么写呢?//定义函数function a(){ alert(123);}//将函数当做值传递给变量var b = a;//当要执行那个函数的时候b(); alert对img的onload的影响,求解释 新人求帮助,我想在网站首页实现图片弹出式或下拉式的效果怎么做? ext框架改出来的页面在ie,火狐下正常显示,在safari下完全显示不出来,怎么解决呀 ★★关于JavaScript对象的简单问题★★ 用jsp实现div移动后,想实现移动时的动态效果 请教图片显示问题 这样调用函数 参数传递为什么错误 JS饼状图的实现 从1980年到今天的下拉菜单,错在哪?大哥帮改一下 Jquery-1.11.1.min.js中Date对象未定义 怎么知道点了哪个? 本人小白,想学习Web,改从哪里开始?求指导
new Function("return"+date)是用字符串为函数内的代码来创建个匿名函数,函数后面的()实际上是执行函数的运算符。这要是用于执行字符串内的代码
还能写成
return eval(date);
2.
js中的函数和java,C#中的函数不一样
js中的函数其实是一种数据,与数值,数组和字符串是一样的。
可以赋值传递给变量,设置属性等
一个函数后面的()实际上是执行函数的运算符
所以在赋值传递函数时后面是不加()的
3.
自己查“闭包”一词
1.
rerurn(new Function("return"+date))();
还可以: rerurn(eval("return"+date))();
为什么这么写的原因是为了使用系统内置函数对象来构建一个函数,目的就是为了简写某些字符串。
但不推荐这样做,这样是有风险的:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions_and_function_scope
2.var a = {
"aaa" : a,
"bbb" : b,
"ccc" : c
}不能写成c()的原因是,c()是一个结果(值),c是一个引用指向(址)。
而一般写在a里边的是为了让a去得到这个结果,不是ccc这儿就得到结果,比如:a.ccc();而不是a.ccc;
这是一种习惯,不是一个规则。
3.function a(){
function b()
}一般也可以拆开写,比如function a(){}; function b(){},只所以写在里边的原因,个人猜测是为了保证函数名的唯一或可访问。如果放在外边,有可能会被其它模块代码影响。比如某另外一个.js中也有同样的b名字的函数。
这条是送的。
当要执行那个函数的时候,又该怎么写呢?//定义函数
function a()
{
alert(123);
}//将函数当做值传递给变量
var b = a;//当要执行那个函数的时候
b();