有人可以解释一下,为什么我们在JavaScript中使用回调?我找到了示例,但它们可以通过使用普通函数来实现.使用它有什么好处?我得到了"如何"使用它的答案,而不是"为什么和何时"我们需要使用它.
通常,我发现它在AJAX中使用.在...上httpRequest.onreadystatechange.这类似于Java的多线程吗?响应的听众如何以及在哪里?异步编程是否类似于多线程?
在以下代码中,控制流程如何:
function some_function(arg1, arg2, callback) {
var my_number = Math.ceil(Math.random() * (arg1 - arg2) + arg2);
callback(my_number);
some_different_function_not_callback(arg1);
}
some_function(5, 15, function(num) {
console.log("callback called! " + num);
});
Run Code Online (Sandbox Code Playgroud)
来自JQuery网站:
关于回调的特殊之处在于,在"父"之后出现的函数可以在回调执行之前执行"(参考:http://docs.jquery.com/Tutorials:How_jQuery_Works)
有人可以用一个例子向我解释这一行吗?
如果我想存储日期和时间,最好将它们存储在单独的日期和时间中,还是使用单个日期时间?
我们什么时候应该使用日期和时间而不是单个日期时间?
我想使用日期或时间过滤我的查询.
我有两张桌子:
table1 (id, name, connte)
table2 (id, name, connte)
Run Code Online (Sandbox Code Playgroud)
他们通过连接table1.connte和table2.connte.每个都包含100条记录.
现在,如果我想从table1中删除id = 20的记录及其在table2中的相应子项,那么最好是执行以下操作:
DELETE d1,d2 FROM table1 d1 INNER JOIN table2 d2 ON d1.connte= d2.connte WHERE d1.id = 20
Run Code Online (Sandbox Code Playgroud)
或以下:
select connte from table1 where id = 20
--Store connte in a variable say aabc--
delete from table2 where connte = aabc -> execute this first
delete from table1 where id = 20 -> execute this second
Run Code Online (Sandbox Code Playgroud)
如果我想要删除的记录只有一个父项和一个子项(这里是table1.id = 20),那么对整个表进行内连接是不是很昂贵?
我正在从JAVA(所以JDBC)运行此查询,因此对于上述条件,运行多个查询或内部联接是否更昂贵(性能明智)?
注意:假设表没有参照完整性.所以,我没有使用级联删除.
我有一些文字说:
<td id=asd >
Run Code Online (Sandbox Code Playgroud)
netbeans中是否有快捷方式,所选文本可以用引号括起来?
<td id="asd" >
Run Code Online (Sandbox Code Playgroud) 在 eclipse indigo 中构建项目时出现以下错误:
An internal error occurred during: "Compacting resource model". Java heap.
Run Code Online (Sandbox Code Playgroud)
这是内存问题吗?
是否可以在 Eclipse 中编译单个包(类似于 netbeans)?我在 netbeans 中遇到了类似的内存问题,但我通过一次编译较少数量的包来解决它。
我在 ganemede 中编译了同一个项目,没有任何问题。
更新:
堆栈跟踪:
!ENTRY org.eclipse.core.jobs 4 2 2012-03-07 09:39:49.520
!MESSAGE An internal error occurred during: "Compacting resource model".
!STACK 0
java.lang.OutOfMemoryError: Java heap space
at java.util.HashMap.newKeyIterator(Unknown Source)
at java.util.HashMap$KeySet.iterator(Unknown Source)
at java.util.HashSet.iterator(Unknown Source)
at org.eclipse.core.internal.jobs.JobManager.findBlockingJob(JobManager.java:685)
at org.eclipse.core.internal.jobs.JobManager.doRunNow(JobManager.java:1085)
at org.eclipse.core.internal.jobs.JobManager.runNow(JobManager.java:1080)
at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:89)
at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:286)
at org.eclipse.core.internal.utils.StringPoolJob.run(StringPoolJob.java:101)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
!ENTRY org.eclipse.core.jobs 4 2 2012-03-07 09:39:49.521
!MESSAGE An internal error …Run Code Online (Sandbox Code Playgroud) 假设我们有一个名为CompHash的类,它有30个不同的变量,如下所示:
public class CompHash{
private String abc1;
private int sdf2;
:
:
private float sgh30;
}
Run Code Online (Sandbox Code Playgroud)
和类似的类:
public class CompHash{
private HashMap diffVariables;
}
Run Code Online (Sandbox Code Playgroud)
在我需要的变量数量从1到30不等的情况下,哪两个会更好?
如果我们在也具有ORDER BY子句的查询中使用Limit子句并在JDBC中执行查询,那么性能会有什么影响吗?(使用MySQL数据库)
例:
SELECT modelName from Cars ORDER BY manuDate DESC Limit 1
Run Code Online (Sandbox Code Playgroud)
我在这个论坛的一个主题中读到,默认情况下,一次获取一个集合大小.如何找到默认的提取大小?
我只想要一条记录.最初,我使用如下:
SQL查询:
SELECT modelName from Cars ORDER BY manuDate DESC
Run Code Online (Sandbox Code Playgroud)
在JAVA代码中,我提取如下:
if(resultSett.next()){
//do something here.
}
Run Code Online (Sandbox Code Playgroud) 假设我有两个名为Form1和Form2的表单.我想从Form1调用Form2中的函数abc().哪一个更好,为什么?
方法1:
'In Form1
Form2.abc()
Run Code Online (Sandbox Code Playgroud)
方法2:
'In Form1
Dim oFrm As New Form2
oFrm.abc()
Run Code Online (Sandbox Code Playgroud) 有人能告诉我脚本标签的位置在使用JQuery时是否重要?
例如:
<script>
$("a").click(function(event) {
event.preventDefault();
$('<div/>')
.append('default ' + event.type + ' prevented')
.appendTo('#log');
});
</script>
<a href="http://jquery.com">default click action is prevented</a>
<div id="log"></div>
Run Code Online (Sandbox Code Playgroud)
上面的代码不能按需要工作,但以下工作,
<a href="http://jquery.com">default click action is prevented</a>
<div id="log"></div>
<script>
$("a").click(function(event) {
event.preventDefault();
$('<div/>')
.append('default ' + event.type + ' prevented')
.appendTo('#log');
});
</script>
Run Code Online (Sandbox Code Playgroud)
为什么第二个有效?是因为代码是从上到下连续工作的吗?此外,如果第一个代码在内部.ready(),那么位置无关紧要.
如果我设置jqgrid参数然后我再次想要用新的参数重置参数,而不添加旧参数,我该如何实现?
让我们说,例如:
Step 1: jQuery("#list").setGridParam({url:"testJsp.jsp",
mtype: "POST",
postData:{xyz: '23fd',
asd: 'were' }
});
Step2: jQuery("#list").setGridParam({url:"testJsp.jsp",
mtype: "POST",
postData:{ert: 'trer',
ghj: 'rew' }
});
Run Code Online (Sandbox Code Playgroud)
现在当我这样做时,在"步骤2"结束时,我总共有4个参数,包括"步骤1"中的参数.但我不想要这个.在"第2步"之后,我只想获得"第2步"的参数.
有没有办法清除"步骤1"和"步骤2"之间的网格参数?
jquery ×3
java ×2
javascript ×2
jdbc ×2
sql-server ×2
datetime ×1
eclipse ×1
jqgrid ×1
mysql ×1
netbeans ×1
netbeans-7 ×1
optimization ×1
performance ×1
sql ×1
vb6 ×1