按键时从文本区域获取最后一行

2024-05-02

我有一个文本区域字段,在每次按键时,我想将文本区域中的最后一行推送到数组中。

目前,我正在每次按键时构建数组以获取文本区域中的最后一行。有没有办法优化这个?意思是,无需构造数组即可获取文本区域中的最后一行。

jQuery('#mytextarea').keypress(function() {
    lines = jQuery('#mytextarea').text().split("\n");
    lastLine = lines[lines.length - 1];

});

if(.. some condition ..) {
myArray.push(lastLine);

事实上,有一种方法可以优化这一点。优化主要是内存使用——实际的CPU使用率也得到了改善。

优化版本依赖于lastIndexOf()。如下:

jQuery("#mytextarea").keypress(function() {
     var content = this.value;
     var lastLine = content.substr(content.lastIndexOf("\n")+1);
});

您会注意到一些微观优化:

  • this已经是 DOM 元素了。仅仅为了获取文本内容而重新调用 jQuery 没有什么意义。节省一点处理器资源
  • using lastIndexOf允许我在最后一次之后得到任何东西\n

Dogbert https://stackoverflow.com/users/320615/dogbertlastIndexOf: http://jsperf.com/splitting-large-strings http://jsperf.com/splitting-large-strings

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

按键时从文本区域获取最后一行 的相关文章

随机推荐

  • 我可以使用什么 Linq 查询来按类别返回所有产品的计数?

    给定以下表结构 如何使用 Linq 查询返回类别名称列表以及该类别中的产品总数 Category ID Name Product ID IDCategory Name 我理想的回报是 Clothes 156 Electronics 2149
  • 处理多个切换

    我陷入了一个toggle 噩梦 终于寻求帮助 我想要的很简单 我有三个链接 a showcountries bronze a showcountries silver a showcountries gold 和三个盒子 countries
  • Android 底部菜单栏

    我想在我的应用程序底部实现一个菜单栏 就像我在 Facebook Google stumble 等许多主要应用程序中看到的那样 见下图 其关键方面是它覆盖在实际内容的顶部 当您向下滚动时 它会消失 但当您向上滚动时它会回来 由于很多应用程序
  • 优化 itoa 功能

    我正在考虑如何使用SSE指令实现整数 4字节 无符号 到字符串的转换 通常的例程是将数字相除并将其存储在局部变量中 然后反转字符串 本示例中缺少反转例程 char convert unsigned int num int base stat
  • 当第一个套接字连接时加载两个图像而不是一个 - Node.js

    我正在尝试在我的游戏中实现多人游戏功能 我在用着node js为了这 当一个人连接时 应该将一张图像加载到浏览器中 相反 它加载两个图像 这是我班级的一部分 var count 0 Keep track of which player we
  • 如何使用elasticsearch进行分页?来自 vs 滚动 API

    我使用elasticsearch作为数据库来存储大量日志数据 我知道有两种方法可以进行分页 使用大小并来自 API 使用滚动API 现在我使用 from 进行分页 从前端和后端获取页面和大小参数 Java searchSourceBuild
  • 是否有可能比 O(n log n) 更好地计算数字列表的中位数?

    我知道可以在 O n 中计算数字列表的平均值 但是中位数呢 有没有比排序 O n log n 和查找中间元素 或者如果列表中有偶数个项目则两个中间元素的平均值 更好的算法 是的 您可以在 O n 时间内 确定性地 完成此操作 http ww
  • 当文件太大时,Flask 会重置连接而不是返回 413

    When MAX CONTENT LENGTH已定义 Flask 应该返回 413 但在我的例子中 它会重置连接并显示以下错误 Error 101 net ERR CONNECTION RESET The connection was re
  • 如何在 PHP 中解析和处理 HTML/XML?

    如何解析 HTML XML 并从中提取信息 Answer recommended by PHP collectives php Collective 原生 XML 扩展 我更喜欢使用其中之一原生 XML 扩展 https php net m
  • Bootstrap 如何从一个类切换到下一个类?

    我试图理解Bootstrap 3的反应能力 我明白在css如果一个元素有 2 个类 那么第二个类将覆盖第一个类 但是 当您使用以下命令创建响应式设计时Bootstrap 您的元素将如下所示 div class col sm 1 col md
  • 将 JSON 对象转换为 protobuf IStruct

    我正在使用Nodejs 的 Dialogflow API https cloud google com nodejs docs reference dialogflow 0 8 x google cloud dialogflow v2 这个
  • 双向消息传递的节俭

    我很好奇 Thrift 是否适合我的用例 我正在制作另一个消息系统 其中有客户端和服务器 但客户端和服务器都向对方发起请求消息 并且并非所有消息都可能是请求 而只是通知 回到 10 年前 我使用手动二进制编解码器完成了这项工作 回到 5 年
  • 谷歌 Android 地图 v2 MetersToEquatorPixel

    我目前的任务是将 Google Android 地图 v1 应用程序转换为 Google Android 地图 V2 应用程序 这个过程并不愉快 感谢谷歌 我的问题是 在之前的应用程序中 他们使用了 Google Android Maps
  • 有没有办法覆盖 iOS 13 上下文菜单的(深色/浅色)用户界面风格?

    我的应用程序支持 iOS 13 深色模式 并为用户提供匹配系统外观或强制应用程序始终使用深色模式或浅色模式的选项 无论系统设置如何 该应用程序还允许在用户按下时显示上下文菜单UILabel 但是 当使用以下方式呈现上下文菜单时UIConte
  • DOJO xhrGet如何使用返回的json对象?

    如何在 get 本身之外访问从 xhrGet 返回的数据 Firebug 显示 json 对象有一个名为 results 的数组 该数组存储响应中的 json 对象 但当我尝试访问它时它为 null 那么 如何访问最后一个代码行接收到的数据
  • Java ArrayList 复制

    我有一个ArrayList l1大小为 10 我指定l1到新列表引用类型l2 Will l1 and l2指向相同ArrayList目的 或者是副本ArrayList对象分配给l2 当使用l2参考 如果我更新列表对象 它会反映l1参考类型也
  • 从 Jinja 渲染模板中删除不必要的空白

    我在用着curl观看我的网络应用程序的输出 当 Flask 和 Jinja 渲染模板时 输出中存在大量不必要的空白 它似乎是通过渲染 Flask WTF 和 Flask Bootstrap 的各种组件来添加的 我可以使用剥离这个sed 但是
  • protoc 在哪里以及如何安装它?

    我想使用protoc生成java文件的命令 我一直按照 github README 中的说明进行操作https github com protocolbuffers protobuf https github com protocolbuf
  • 如何检查目录或其任何子目录中是否存在特定文件

    在 C 中 如何检查目录或其任何子目录中是否存在特定文件 系统 IO 文件 存在似乎只接受单个参数 没有搜索子目录的重载 我可以用 LINQ 来做到这一点系统 IO 目录 GetFiles使用搜索选项 AllDirectories超载 但这
  • 按键时从文本区域获取最后一行

    我有一个文本区域字段 在每次按键时 我想将文本区域中的最后一行推送到数组中 目前 我正在每次按键时构建数组以获取文本区域中的最后一行 有没有办法优化这个 意思是 无需构造数组即可获取文本区域中的最后一行 jQuery mytextarea