通常情况下,开发人员将面临解决问题的两种可能方式之间的选择 - 一种是惯用的和可读的,另一种不太直观,但可能表现更好.例如,在基于C语言中,有两种方法可以将数字乘以2:
int SimpleMultiplyBy2(int x)
{
return x * 2;
}
Run Code Online (Sandbox Code Playgroud)
和
int FastMultiplyBy2(int x)
{
return x << 1;
}
Run Code Online (Sandbox Code Playgroud)
第一个版本更容易为技术和非技术读者选择,但第二个版本可能表现更好,因为比特移位比乘法更简单.(现在,让我们假设编译器的优化器不会检测到它并对其进行优化,尽管这也是一个考虑因素).
作为开发人员,最初的尝试会更好吗?
如何在 Jquery 或 Javascript 中轻松执行这些类型的循环?最好没有任何其他插件。
string a = "";
foreach (var i in (from a in DbList1 select a.FieldA).Distinct())
{
a += i + ", ";
}
Run Code Online (Sandbox Code Playgroud)
和这个
foreach (var i in DbList2)
{
a += i.FieldB + ", ";
}
Run Code Online (Sandbox Code Playgroud)
循环数 2 至少可以这样解决。
$.each(aData.DbList2, function (index, value) {
a += value.FieldB;
);
Run Code Online (Sandbox Code Playgroud)
虽然不是 100% 确定这是最有效的
我想建立一个动态的组合框$.each和$('<OPTION>'),但它是在IE浏览器很慢(需要3/4分钟渲染服务器响应后数据)在Firefox和其他浏览器它的罚款.
这是我构建组合的代码
var sel = ('#myDynCmb');
$.each(dataCollection, function(key,_value) {
sel.append($("<OPTION>").val(key).text(_value));
});
Run Code Online (Sandbox Code Playgroud)
任何帮助赞赏.