Welcome 微信登录

首页 / 脚本样式 / JavaScript

Node.js中安全调用系统命令的方法(避免注入安全漏洞)

Node.js中安全调用系统命令的方法(避免注入安全漏洞)

在这篇文章中,我们将学习正确使用Node.js调用系统命令的方法,以避免常见的命令行注入漏洞。我们经常使用的调用命令的方法是最简单的child_process.exec。它有很一个简单的使用模式;通过传入一段字符串命令,并把一个错误或命令处理结果回传至回调函数中。这里是你通过child_process.exec调用系统命令一个非常典型的例子。复制代码 代码如下:child_process.exec("ls", function (err, data) { ...
jQuery不兼容input的change事件问题解决过程

jQuery不兼容input的change事件问题解决过程

最近开发一个项目,需要实现用户在WEB表单里的多个INPUT框中输入数量后,立即自动计算加总各项输入的数量之和,并显示在指定的INPUT框中,这个功能实现的原理是简单的,就是只需要在INPUT的onchange事件中计算加总并将结果赋给指定的INPUT框中即可实现,代码如下:复制代码 代码如下:$("input.syxcost").change(function(){ computeReceivedsyxcost();}function computeRe...
使用Javascript简单实现图片无缝滚动

使用Javascript简单实现图片无缝滚动

js无缝滚动效果几乎在任何网页上都能看到它的身影,有的可能是使用插件,其实使用原始的javascript比较简单。主要的是使用js位置知识。1.innerHTML:设置或获取元素的html标签2.scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距3.offsetWidth:设置或获取指定标签的宽度4.setInterval():设置方法定时启动5.clearInterval();清除定时器效果图:先睹为快:demo复制代码 ...
javascript实现切换td中的值

javascript实现切换td中的值

之前面试前端时,遇到一道面试题,当时没有思绪所以没答出来,今天整理了一下和大家一起分享下:原题是:使用对象方法创建一个2x2的表格(table),要求第二行第二列单元格中拥有一个按钮,当点击此按钮时,第一行第一列的值与第二行第一列的值互换,见下图创建表格点击效果本人愚钝,如果您有更好的方法不妨告诉在下,本人琢磨了半天终于有了些结果:1.创建表格的对象复制代码 代码如下:<!DOCTYPE html><html lang="en">&...
javascript的push使用指南

javascript的push使用指南

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。返回值为把指定的值添加到数组后的新长度。语法:arrayObject.push(newelement1,newelement2,....,newelementX)参数newelement1,必需。要添加到数组的第一个元素。参数newelement2,可选。要添加到数组的第二个元素。参数newelementX,可选。可添加多个元素。push() 方法可把它的参数顺序添加到 arrayObje...
Node.js实现的简易网页抓取功能示例

Node.js实现的简易网页抓取功能示例

现今,网页抓取已经是一种人所共知的技术了,然而依然存在着诸多复杂性, 简单的网页爬虫依然难以胜任Ajax轮训、XMLHttpRequest,WebSockets,Flash Sockets等各种复杂技术所开发出来的现代化网站。我们以我们在Hubdoc这个项目上的基础需求为例,在这个项目中,我们从银行,公共事业和信用卡公司的网站上抓取帐单金额,到期日期,账户号码,以及最重要的:近期账单的pdf。对于这个项目,我一开始采用了很简单的方案(暂时并没有使用我们正在...
node.js实现BigPipe详解

node.js实现BigPipe详解

BigPipe 是 Facebook 开发的优化网页加载速度的技术。网上几乎没有用 node.js 实现的文章,实际上,不止于 node.js,BigPipe 用其他语言的实现在网上都很少见。以至于这技术出现很久以后,我还以为就是整个网页的框架先发送完毕后,用另一个或几个 ajax 请求再请求页面内的模块。直到不久前,我才了解到原来 BigPipe 的核心概念就是只用一个 HTTP 请求,只是页面元素不按顺序发送而已。了解了这个核心概念就好办了,得益于 n...
JavaScript开发人员的10个关键习惯小结

JavaScript开发人员的10个关键习惯小结

随着新技术的不断发展,JavaScript已经不再仅仅只是一个网络语言。现在,我们能够看到很多使用JavaScript来构建基于本地浏览器的Web应用程序的手机,同时也有非常多的灵活的Web应用程序,如Trello。基于JavaScript打造的应用程序在世界上已经非常流行了。目前,JavaScript仍然是一门比较容易使用和处理的编程语言,很多人把它当做要学习的第一门编程语言。作为一名JavaScript程序员,有几个关键的习惯是必须要养成的,它可以帮助...
angularjs的一些优化小技巧

angularjs的一些优化小技巧

关于优化ng的手段网上已经有很多了,核心都是从$$watchers这个作用域内部属性说起的,今天我来说点别的,本质还是不变的,因为这是ng的硬伤,不过我相信只要运用合适的手法,这些问题还是可以避免的.ng简介angularjs简称ng,是google出品的mvvm框架,此在提高前端项目开发效率(实践中来看确实很能提高开发效率),以控制器,指令,服务来围绕整个项目,内部以独有的DI来解决三层之前的调用问题.更多的详情信息可以参考我之前写的ng源码分析.ng的...
angularjs指令中的compile与link函数详解

angularjs指令中的compile与link函数详解

通常大家在使用ng中的指令的时候,用的链接函数最多的是link属性,下面这篇文章将告诉大家complie,pre-link,post-link的用法与区别.angularjs里的指令非常神奇,允许你创建非常语义化以及高度重用的组件,可以理解为web components的先驱者.网上已经有很多介绍怎么使用指令的文章以及相关书籍,相互比较的话,很少有介绍compile与link的区别,更别说pre-link与post-link了.大部分教程只是简单的说下co...
angularjs中的单元测试实例

angularjs中的单元测试实例

当ng项目越来越大的时候,单元测试就要提上日程了,有的时候团队是以测试先行,有的是先实现功能,后面再测试功能模块,这个各有利弊,今天主要说说利用karma和jasmine来进行ng模块的单元测试.什么是Karmakarma是一个单元测试的运行控制框架,提供以不同环境来运行单元测试,比如chrome,firfox,phantomjs等,测试框架支持jasmine,mocha,qunit,是一个以nodejs为环境的npm模块.安装测试相关的npm模块建议使用...
<< 951 952 953 954 955 956 957 958 959 960 >>