我有类似的代码,我想知道是否有办法使它简短
I have similar code to this and im wondering if there is way to make it short
我想知道如何在js文件中缩短它们。我有很多类似的代码。我一遍又一遍地重复这个if函数,还必须重复else函数。唯一改变的是Mission()Doclick()和Yesdo()。如果有办法让它简短,请告诉我,谢谢。
function Buy() {
if (uida == '234' || uidb == '4563') {
Mission();
} else {
stop();
};
};
function Start() {
if (uida == '234' || uidb == '4563') {
Doclick();
} else {
stop();
};
};
function ReBuy() {
if (uida == '234' || uidb == '4563') {
Yesdo();
} else {
stop();
};
};
使用函数指针!
function Uida(fn) {
if (uida == '234' || uidb == '4563') {
fn();
} else {
stop();
};
}
function Buy() {
Uida(Mission);
};
function Start() {
Uida(Doclick);
};
function ReBuy() {
Uida(Yesdo);
}
当然,您需要将Uida
函数重命名为更具描述性的函数:)
您可以让它们都调用一个类似的函数,并传递一个uida
参数,类似于以下内容:
// You could change the following 3 functions to have ternary statements
// eg: if ( uidaCheck() ) ? Function() : stop();
//
function Buy() {
if ( uidaCheck() ) {
Mission();
} else {
stop();
}
}
function Start() {
if ( uidaCheck() ) {
Doclick();
} else {
stop();
}
}
function ReBuy() {
if ( uidaCheck() ) {
Yesdo();
} else {
stop();
}
}
function uidaCheck() {
// uida assumed to be globally accessible var
//
if ( ( uida == '234' ) || ( uida == '4563' ) ) {
return true;
} else {
return false;
}
}
不管怎么说,这就是理论,给我一秒钟,我看看能不能整理一下。(三元)
这是一个快速的小提琴。
相关文章:
- 调试一个简单的jQuery函数;想知道是否与其他代码冲突
- 我想知道如何在javascript中进行表单验证
- 我创建了一个Javascript待办事项列表,但想知道如何在浏览器刷新后保留这些帖子
- 我想知道李的身份
- 我想知道facebook是如何将你发布的内容(如网络链接)更改为对话框中的小部件的
- 发现这个讨厌的代码,我想知道它有什么作用?我应该担心吗..
- JS代码有什么问题,让我知道代码是否可以改进
- 我想知道“./”和“/”之间的区别
- 我想知道如何只激活表单提交,而不获取jquery中ajax url的值
- 我想知道如何创建一个自定义对话框,当点击按钮时会弹出
- 我想知道我在(Internet Explorer)上触发上下文菜单的图像的url
- 我有类似的代码,我想知道是否有办法使它简短
- 我想重复代码,但不知道如何使用循环
- (杰奎里)我想知道为什么这段代码不起作用
- 我只是想知道这个java脚本代码中出了什么问题
- 我正在尝试更改我网站上的时钟颜色.我的代码不起作用,我想知道我犯了什么错误
- 我想知道在javascript中编写可重用代码的这种方法
- 我在网上看到一个帖子,是一个女孩理发后发的.我想知道代码是用什么语言写的
- 我想知道如何创建两个不受相同代码影响的可搜索表
- setInterval不重复我的代码,但它运行一次,我想知道为什么