组织JavaScript,PHP代码,以便在具有嵌套函数时易于阅读
organize javascript,php code for easy to read way when have nested functions
这是我的示例代码...
one();
function one()
{
function abc()
{
//code
}
function bcd()
{
//code
}
abc();
bcd();
}
这是关于PHP,JavaScript.我想在有或不使用面向对象的编程技术的情况下以易于阅读的方式构建此代码。
如何从函数一外部调用函数 ABC..?
有多种方法:
// when using one() as a constructor for an object
function one()
{
this.abc = function() { };
this.def = function() { };
}
obj = new one();
obj.abc();
// prototype
function one()
{
}
one.prototype.abc = function() { };
one.prototype.def = function() { };
obj = new one();
obj.abc();
// module pattern
function one()
{
var abc = function () { };
var def = function () { };
return {
abc: abc,
def: def
}
}
obj = one();
obj.abc();
// or just assign it as a property to your function
function one()
{
}
one.abc = function() { }
one.def = function() { }
one.abc();
选择适合您的任何内容。
示例中的
嵌套函数的作用域在函数内,并在函数 one() 完成后被丢弃;因此它们不会公开。
可以使用闭包来公开函数...JavaScript 闭包是如何工作的?...http://www.sitepoint.com/javascript-closures-demystified/......但是给出简单示例的最简单方法是使用函数创建的 abc 命名空间。
function abc() {
abc.def = function () {alert("hello")}
}
abc(); // add def function to abc namespace.
abc.def(); // call def function which is part of the abc object.
为了避免对象符号,可以将变量传递给函数。
function abc(operator) {
function def() {alert("hello")}
if (operator == def) {def()}
}
abc("def");
然而,这变得比使用对象表示法更难阅读,因为我需要查看函数来确定 abc.def() 告诉我正在调用 def() 时发生了什么,它是 abc 的一部分。它会导致性能下降,因为每次调用都需要重新创建 def。
相关文章:
- 用嵌套函数和默认函数定义函数
- d3中堆栈函数和嵌套函数之间的差异
- JavaScript 中的嵌套函数和 “this” 关键字
- Javascript中带有返回值的嵌套函数
- 访问嵌套函数结构中的JavaScript父函数变量
- 从嵌套函数访问函数属性
- 如何在javascript中使用嵌套函数作为生成器(使用“inner”yields)
- Javascript嵌套函数属性继承
- 我对“;返回true"嵌套函数内部;t工作
- JS中的嵌套函数
- 如何在嵌套函数中获取$(this)
- Jasmine中返回Deferred的模拟嵌套函数
- 如何在嵌套函数jquery上保持变量的值不变
- JavaScript中的深度嵌套函数
- Jquery从嵌套函数返回
- 使用'这'在类中的嵌套函数中
- 如何从上面的嵌套函数返回
- 从JavaScript中的嵌套函数返回值
- Javascript OOP-从函数返回一个值;s在对象内部's方法(嵌套函数)
- Javascript对象/名称空间-如何访问从嵌套函数添加的属性(包括示例)