jQuery 代码性能改进
jQuery code performance improvement
我有一个字段,当我在其中粘贴一些内容时,内容会得到验证并逐行添加到另一个隐藏字段中。我的内容可以是用新行分隔的多个手机号码,当您将它们粘贴到可见字段中时,每一行都会被验证并添加到另一个用于将值传递到后端的隐藏字段中。
例如
12345
54321
34567
我用来将值添加到隐藏字段的方式可以在以下代码中看到:
$('#recipients').val($('#recipients').val().length <= 0 ? output.join("'n") : $('#recipients').val() + "'n" + output.join("'n"));
在上面的代码中,"输出"是用户粘贴的内容中的一行(数字(,收件人是隐藏字段。
这一行的调用次数与我的内容行一样多。但是当我检查性能时,这条线会占用大量 CPU 负载(当行数太多时(并在完成工作时造成滞后(浏览器挂起(。
那么这行代码可以用更有效的方式重写吗?
谢谢
下面介绍如何在变量中缓存选择器的结果:
var $recip = $("#recipients");
var $recipval = $recip.val();
var new_out = output.join("'n");
$recip.val($recipval.length == 0 ? new_out : $recipval + "'n" + new_out);
你也可以绕过jQuery,以获得更多的提升:
var recip = $("#recipients")[0];
var recipval = recip.value;
var new_out = output.join("'n");
recip.value = recipval.length == 0 ? new_out : recipval + "'n" + new_out;
new_out
不会影响性能,它只是使代码更易于理解。
相关文章:
- 从桌面读取python文件时高亮显示代码
- 函数参数中的数据与指定变量之间的任何性能差异
- 提高JQuery的性能
- 如何将函数包装在函数中以避免代码重复
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 货币代码为欧元-金额的格式不应包含小数
- Regex代码只允许一个空格
- 行之间有空格会影响 JavaScript 代码的性能吗?
- 上传JavaScript代码包前后的站点性能差异
- 分析对性能敏感的代码路径
- jQuery 代码性能改进
- 如何优化代码以提高性能
- 如何在浏览器中对代码进行性能测试
- 在脚本中使用代码会在性能上有什么不同吗?标记或从.js文件
- 提高jQuery代码性能的方法[选择器角度]
- 我如何检查/比较我的JavaScript代码速度/性能
- 在React性能度量代码中有一个内部错误
- 内联Javascript代码和纯Javascript代码之间的最佳性能是什么?
- 通过减少选择器重复来提高javascript代码性能
- 为什么这段代码性能不高?更新内部文本vs替换整个标签