`

自动删除javascript中的logging语句

    博客分类:
  • web
 
阅读更多

 

原文地址:http://www.javaarch.net/jiagoushi/744.htm

 

自动删除javascript中的logging语句

一般在测试环境中我们会加上很多console.log来帮助调试,但是发布到生产环境肯定是要删除掉的。
我们可以使用groundskeeper (GitHub: github.com/Couto/groundskeeper)(用node.js写) 这个工具
来删除javascript中的console.log语句。

比如我们有下面这段js:

	function filter(list, age) {
	  var result = [];
	  list.forEach(function (person) {
		if (person.name && person.age > age) {
		  console.log('including', person.name);
		  result.push(person);
		}
	  });
	  return result;
	}
	
我们安装完groundskeeper之后,使用

	groundskeeper < filter-debug.js > filter.js
	
那上面那段js变成:只是把console.log变成一个空行,方便svn的比较

	function filter(list, age) {
	  var result = [];
	  list.forEach(function (person) {
		if (person.name && person.age > age) {
	 
		  result.push(person);
		}
	  });
	  return result;
	}
	
这个工具还可以跟git pre-commit hook( http://ariya.ofilabs.com/2012/03/git-pre-commit-hook-and-smoke-testing.html)
集成,那么就不需要人工操作了,只要git commit的时候任何js文件就会过滤掉。

	files=$(git diff-index --name-only --diff-filter=ACM HEAD | grep -P '\.js$')
	for file in $files; do
	  groundskeeper < $file > $file.tmp && mv $file.tmp $file
	done

 

分享到:
评论

相关推荐

    JS-Logging:一个简单易用JavaScript模块用于日志记录

    JS-Logging是一个强大且灵活的JavaScript日志库,它提供了丰富的功能,让开发者能够方便地在JavaScript项目中实现日志记录。通过合理地使用日志,我们可以更好地理解和优化我们的代码,提升开发效率,减少线上问题的...

    Javascript Logging on Server using Ajax-开源

    JavaScript是Web开发中不可或缺的一部分,它负责为网页添加交互性和动态功能。然而,在开发过程中,错误、异常和调试信息的追踪对于确保代码的稳定性和优化至关重要。"Javascript Logging on Server using Ajax"是一...

    sulky-optimizer-strip-debug:从 JavaScript 代码中删除控制台、警报和调试器语句

    "sulky-optimizer-strip-debug"是一个专为JavaScript设计的工具,用于自动从代码中移除这些调试相关的语句,以优化和精简最终部署的代码。 1. **控制台日志(Console Logging)**: 控制台日志在开发阶段非常有用...

    grunt-remove-logging:Grunt.js任务,用于删除控制台日志记录语句

    此任务从源代码中删除所有控制台日志记录语句。 入门 使用以下命令安装此插件: npm install grunt - remove - logging 接下来,将此行添加到项目的grunt文件中: grunt . loadNpmTasks ( "grunt-remove-logging...

    dwr ajax 下拉框自动搜索

    在这个特定的项目中,"dwr ajax 下拉框自动搜索"是指利用DWR框架和AJAX技术来创建一个功能,用户在输入框中输入关键词时,下拉框会自动填充匹配的建议,类似百度搜索的体验。当用户选择某个选项或点击搜索按钮,系统...

    自动切换浏览网页.zip

    Python的`try-except`语句用于捕获和处理异常,`logging`库则可以帮助记录运行时的信息,方便调试和追踪问题。 9. **自动化测试框架**:除了Selenium,还有其他自动化测试框架,如Appium(移动应用测试)、Cypress...

    chrome66版自动化全家桶.zip

    - **报告和日志**: 可以使用Python的logging模块记录测试过程中的信息,以便于后期分析和调试。此外,还可以集成第三方库生成详细的测试报告。 总之,这个"Chrome 66版自动化全家桶.zip"提供了在Android平台上使用...

    【源码已发布】Java自动投票工具

    Java中的`java.util.logging`或log4j等库可用来记录日志,`try-catch-finally`语句用于异常捕获。 8. **安全性与合法性**:开发者应确保工具的使用符合网站的使用条款和法律法规,避免因滥用导致的封号或其他法律...

    小米云函数自动打卡刷步.zip

    8. **日志记录**:为了便于调试和问题排查,开发者可能使用了Python的`logging`模块,记录脚本运行过程中的关键信息和错误。 9. **版本控制**:为了跟踪代码的变更和协同开发,开发者可能使用了如Git这样的版本控制...

    logging:arduino 的数据记录服务器

    在本文中,我们将深入探讨如何将Arduino的数据记录到服务器,特别是在使用logging库和JavaScript的情况下。标题"logging:arduino的数据记录服务器"暗示了我们要讨论的是如何将Arduino设备收集的数据实时发送到一个...

    node-voicemail-logging:语音邮件记录模块

    星号语音邮件记录 对 Asterisk 语音邮件应用程序的日志支持。... 或将以下内容添加到您的 package.json 文件中 "dependencies" : { "voicemail-logging" : "asterisk/node-voicemail-logging" } 用法 var

    XPages 基本调试技巧

    在XPages开发中,JavaScript扮演了核心角色,被分为客户端和服务器端两个部分。尽管它们共享相同的关键词、运算符及语法,但在运行环境、变量范围及性能上存在显著差异: - **客户端JavaScript**:运行在用户浏览器...

    ibatis-2.3.

    在提供的压缩包子文件名 "system" 和 "js" 中,"system" 可能是指系统相关的配置或组件,而 "js" 通常代表 JavaScript 文件,但在 iBATIS 的上下文中不太常见,可能是某种特定的配置或者辅助工具,但具体作用需要...

    slogging:基于ScalaJVM,Scala.js和Scala Native宏的Typesafe-logging(和slf4j)兼容的日志记录库

    由于JavaScript中没有原生的日志系统,`slogging`会将日志输出到浏览器的控制台或者在Node.js环境中使用内置的日志功能。这对于前端开发者来说,能够保持与后端一致的日志记录方式。 在Scala Native环境中,由于其...

    Python-京东618抢券工具

    JavaScript渲染的页面可能还需要用到Selenium这样的库,它可以模拟真实用户的行为,包括点击、滚动和填充表单等。 3. **模拟登录**:在访问特定页面或执行某些操作前,可能需要先登录。Python中可以使用requests库...

    DataTable CRUD_TheClient_asp_

    【标题】"DataTable CRUD_TheClient_asp_" 涉及的是在ASP.NET环境中使用DataTable进行CRUD(创建Create、读取Read、更新Update、删除Delete)操作的技术。DataTable是.NET Framework中的一个类,它提供了在内存中...

    jd-seckill-master

    以上就是“京东JD抢茅台python脚本”项目中的主要知识点,掌握这些技能后,不仅可以应用于抢购场景,还可以灵活应用到其他网络爬虫、自动化测试等项目中。在实际操作中,务必遵守京东平台的使用规则,尊重并保护个人...

    基于python的rpa管理系统 (11).zip

    Selenium是Python中最常用的Web自动化工具,可以模拟用户行为,如点击按钮、填写表单、执行JavaScript等。学习Selenium的基本操作,如WebDriver的使用、元素定位(ID、Class、XPath等)以及等待策略,对实现网页...

    services-logging:面向懒惰Java开发人员的ES上的日志记录框架

    例如,收集器将标记MDC(本地线程),以对1次调用中的所有日志语句进行分组。 使用者:日志记录使用者包含可在logback.xml中配置的附加程序的实现。 使用者会将数据转换为JSON,以便将其保存到Elasticsearch。 曝光...

    根據googlescript建立的團購網站

    Google Script是Google Apps Script的简称,它允许开发者用类似JavaScript的语言编写脚本,与Google的多种服务(如Gmail、Google Sheets、Google Drive等)进行集成,实现自动化任务和定制化功能。” 【标签】:...

Global site tag (gtag.js) - Google Analytics