下面是例1好,还是例2好,还是命名空间里根本不允许有这样的调用,需要重新设计,把f2的结果设计成f1的参数的方式?
例1:
var M={
f1:function(){
var a=this.f2()
return a
},
f2:function(){
}
}例2:
var M={
f1:function(){
var a=M.f2();
return a
},
f2:function(){
}
}
例1:
var M={
f1:function(){
var a=this.f2()
return a
},
f2:function(){
}
}例2:
var M={
f1:function(){
var a=M.f2();
return a
},
f2:function(){
}
}
解决方案 »
- 关于javascript输出一句话的问题
- 谁能帮忙调试以下代码,百度google都找不到答案,难道真的很难?
- 这段js代码是怎么执行的
- 求教一个加引号正则表达式的编写
- 根据现在日期,推算出以前的日期
- 一个比较ft的问题:当焦点在<input type="file">上时,能按回车打开文件选择对话框吗?
- 请问javascript中如何判断限制某个输入筐的字数不能超过一个数。
- DropDownList在客户端赋值,怎样在服务端取到!?(详情请进)
- VML作的Chart图看后的疑问
- 关于“读心术”的原理,有源代码,但是我不明白。请教!up给分。
- jquery 传个参数调用对象,IE6下面老提示缺少对象,高版本没有问题
- 如果写一个JS搜索去变量的
我想问问在有没有专门的规定,禁止在js的大型接口程序中的命名空间下的函数中调用其它函数?
命名空间 非要{}做吗? 函数就不能做吗?
{}is instance of Object.
Object = function(){XX}.
this是给那种没确定对象的人用的。
所以说 一般很多程序都有类似 includ import use 之类的关键字 指定当前代码要依赖的外部代码
根据指定的依赖关系 会进行加载前的预处理
js没有直接提供 但是精神是不变的
所以有个 JS的AMD规范
requirejs 还有 node.js都是依据这个规范实现的有时间看下这个 AMD规范
写法的好坏取决于具体的执行环境。如果只就调用对象其他属性或方法而言:
例1中的this会根据具体的执行环境和调用对象而有所变化。
例2中只要保证调用该方法的是M,就可以正确调用M的其他方法或属性,相对例1而言更稳定一些。