我在加载每个txt文件末尾执行doSome()
,然后在val等于num
时运行$('#holder').load('item[i].txt',function(){
val++;
if(val==num){
doSome();
}
}
。
val++;
if(val==num){
doSome();
}
如何写这个速记?
<h1>Employee</h1>
<fieldset>
<h2>Employee Information</h2>
<div class="row">
<div class="col-lg-6">
<div class="form-group">
<label>Name</label>
<input id="name" name="name" type="text" class="form-control required">
</div>
<div class="form-group">
<label>Date</label>
<input id="todaysDate" name="todaysDate" type="text" class="form-control required">
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label>Job Title</label>
<input id="title" name="title" type="text" class="form-control required email">
</div>
<div class="form-group">
<label>Department</label>
<input id="department" name="department" type="text" class="form-control">
</div>
</div>
<div class="col-lg-6">
<div class="form-group">
<label>Date Hired</label>
<input id="hiredDate" name="hiredDate" type="text" class="form-control required email">
</div>
<div class="form-group">
<label>Termination Date</label>
<input id="termDate" name="termDate" type="text" class="form-control">
</div>
</div>
</div>
</fieldset>
答案 0 :(得分:3)
val++
已经(基本上)是val = val + 1;
您可以使用&&
替换if
:
val == num && doSome();
导致:
$('#holder').load('item[i].txt',function(){
val++;
val == num && doSome();
}
就个人而言,出于可读性目的,我更喜欢将增量和条件放在单独的行上。
另一个建议:如果if
语句仅用于1行代码,{}
语句(if
)的括号是可选的:
if(condition) {
doSomething();
}
可以缩短一点:
if(condition)
doSomething();
答案 1 :(得分:2)
使用预增量运算符
if (++val === num) {
//code here
}
首先将val
增加1,然后将更新后的值与num
变量进行比较。
答案 2 :(得分:1)
Pre-increment
可以在variable
的值首先递增然后返回时使用,而在Post-increment
中,variable
的值先返回然后递增。
if (++val == num) {
doSome();
}
答案 3 :(得分:-1)
所以...也许这个? :) ++val ^ num || doSome();
^
(XOR)是一个按位运算符。如果两个操作数相同,则返回0。例如2^2 = 0
。
因此,您可以首先以这种方式预先增加val
:++val
。然后你可以对num进行XOR运算,当它们相等时 - 它将返回0,在js的逻辑语句中被认为是false
。然后,当||
运算符的左侧为false时,它将执行此语句的正确部分 - doSome()
。
a ^= a
而不是a = 0
。