Javascript函数格式化
我担心我的条件是否格式不正确。Javascript函数格式化,javascript,Javascript,我担心我的条件是否格式不正确。 你觉得这个合适吗 function validateCoupon( form ){ if (form.textCoupon.value.length ){ if (form.textCoupon.value.toLowerCase() == "Item01") { _gaq.push(['_trackEvent', 'Coupon', 'Activated', 'Item01']); } if (form.textCoupon
你觉得这个合适吗
function validateCoupon( form ){
if (form.textCoupon.value.length ){
if (form.textCoupon.value.toLowerCase() == "Item01") {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', 'Item01']);
}
if (form.textCoupon.value.toLowerCase() == "Item02") {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', 'Item02']);
}
$.get( "/include/checkCoupon.php", { coupon: form.textCoupon.value }, validateShipping );
}
else {
form.textCoupon.style.border = '';
validateShipping( "yes" );
}
return false;
}
源代码的格式设置与JavaScript运行时无关。这只是个人品味的问题。好吧,有些东西似乎是多余的:
form.textcupon.value
可以是Item01或Item02。如果是一个,就不可能是另一个,因此我建议您使用开关语句
另一个问题是,如果调用
.toLowerCase()
,则不会返回Item01,而是返回Item01,并且字符串相等性区分大小写。要么对条件的两个部分调用此函数,要么干脆不使用它。避免缩进中的制表符:它们在所有平台上的呈现方式不同。如果这是我的代码,我就是这样编写的:
var validateCoupon = function (form) {
var textCoupon = form.textCoupon,
value = textCoupon.value,
track = function (value) {
_gaq.push(['_trackEvent', 'Coupon', 'Activated', value]);
};
if (value.length) {
if (value === 'Item01' || value === 'Item02') {
track(value);
}
$.get('/include/checkCoupon.php', { coupon: value }, validateShipping);
} else {
textCoupon.style.border = '';
validateShipping('yes');
}
return false;
};
您的toLowerCase=='Item01'检查将永远不会通过,因为Item01不是小写。感谢Eli的帮助,这绝对是完美的!如果问题太多就没有了=)啊,我明白了。那么缩进代码的IDE方式呢?Visual Studio、Eclipse等是否允许这种缩进方式?确切地说:Visual Studio和Eclipse都可以配置为插入空格而不是选项卡。