JS封装插件:实现文件读写功能

scripting.FileSystemObject是一个可以实现文件读写的COM组件,由于COM组件可以被跨语言调用,因此可以选择像vbs或者JS这种脚本语言调用,下面我就使用该COM组件封装了一个简单的JS插件,实现了文件的读写功能。(只能IE打开)

JS代码(插件):

(function(win,undefined){
	var fso = new ActiveXObject("Scripting.FileSystemObject");
	var file=null;
	var FileUtil=function(){

	};
	FileUtil.prototype={
		createTextFile:function(filename){
			file=fso.CreateTextFile(filename, true);
		},
		write:function(content){
			file.WriteLine(content);
		},
		closeStream:function(){
			file=null;
		}
	}
	win.FileUtil=FileUtil;
}(window))

  

  下面开始调用该组件:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<script type="text/javascript" src="jquery-3.2.1.js"></script>
<script type="text/javascript" src="FileUtil.js"></script>
<body>
	<script type="text/javascript">
		var fileUtil=new FileUtil();
		fileUtil.createTextFile("hello.txt");
		for(var i=0;i<10;i++){
			fileUtil.write("大路");
		}
		fileUtil.closeStream();
	</script>
</body>
</html>

  实现的效果如下:

虽然代码比较少,但是其中包含了书写JS插件的基本方法与格式,其中就用到了JS的闭包。如果深入思考插件,我们的项目将可以实现模块化和组件化开发,真正做到一次开发,到处复用。

时间: 2024-07-29 08:06:56

JS封装插件:实现文件读写功能的相关文章

原生js封装插件

https://www.jianshu.com/p/937c6003851a object-fit: cover:https://www.jianshu.com/p/a2ce70fa9584 flex-shrink: https://blog.csdn.net/m0_37058714/article/details/80765562 transition:  https://baijiahao.baidu.com/s?id=1570373293694757&wfr=spider&for=p

[js高手之路]node js系列课程-创建简易web服务器与文件读写

web服务器至少有以下几个特点: 1.24小时不停止的工作,也就是说这个进程要常驻在内存中 2.24小时在某一端口监听,如: http://localhost:8080, www服务器默认端口80 3.要能够处理基本的请求:如get, post 在node js中创建一台服务器非常的简单,因为node自带http模块,该模块可以帮助我们非常快速搭建一台web服务器,来处理一个简单的请求. 1 const http = require("http"); 2 var server = ht

紫猫插件-文件读写(1-13)

QM[zm]05.01 文件读写之读取乱码文件(VIP) 小知识:了解下base64编码(功能就目前而言只是让内容无法直接读取 还有一个常用用处是可以把图片的二进制流base64编码 把图片作为字符串来传输 实际上稍微懂一点这方面的知识的很容易看到真实的内容) 举个例子 比如迅雷下载地址 我们把第一行的字符串进行base64解码 得到的结果是 很明显 迅雷对下载地址进行了保护 算法无非就是 给真正的下载地址左侧加AA右侧加ZZ 然后整体bse64加密 得到了我们看到的迅雷下载地址 顺便说一下 我

原生JS封装Ajax插件(同域&amp;&amp;jsonp跨域)

抛出一个问题,其实所谓的熟悉原生JS,怎样的程度才是熟悉呢? 最近都在做原生JS熟悉的练习... 用原生Js封装了一个Ajax插件,引入一般的项目,传传数据,感觉还是可行的...简单说说思路,如有不正确的地方,还望指正^_^ 一.Ajax核心,创建XHR对象 Ajax技术的核心是XMLHttpRequest对象(简称XHR),IE5是第一款引入XHR对象的浏览器,而IE5中的XHR对象是通过MSXML库中的一个ActiveX对象实现的,因此在IE中可能有3个版本,即MSXML2.XMLHttp.

node.js的fs核心模块读写文件操作 -----由浅入深

node.js 里fs模块 常用的功能 实现文件的读写 目录的操作 - 同步和异步共存 ,有异步不用同步 - fs.readFile 都不能读取比运行内存大的文件,如果文件偏大也不会使用readFile方法- 文件大分流读取,stream - 引入fs模块 - let fs=require('fs') 同步读取文件 -fs.readFileSync('路径',utf8); let result=fs.readFileSync('./1.txt','utf8'); 异步读取文件,用参数err捕获错

js封装成插件

由于项目原因,工作一年多还没用js写过插件,项目太成熟,平时基本都是在使用已经封装好的功能插件.感觉自己好low......这两天想自己抽空写一个canvas画统计图与折现图的插件,所以就去网上学习了下如何封装.....虽然之前看了很多源码,但是感觉就算了解也是野路子..... 什么是封装呢? 我的理解就是 把一个功能单独做成一个组件,就像做饺子,以前做饺子必须自己先用面粉做饺子皮,再做饺子馅,然后再手工包饺子,但是现在人们发明了自动包饺子机器,虽然机器里面的每一步骤和你自己包饺子是一样的,但是

封装实现JavaScript 文件的动态加载功能

function loadScript(url, callback){ var script = document.createElement ("script") script.type = "text/javascript"; if (script.readyState){ //IE script.onreadystatechange = function(){ if (script.readyState == "loaded" || scr

Node.JS 文件读写,把Sheet图集转换为龙骨动画图集

Node.JS 文件读写,把Sheet图集数据转换为龙骨动画图集数据 var fs = require("fs") var readline = require("readline"); var rl = readline.createInterface({ input:process.stdin, output:process.stdout }); var path = undefined; var dbName = undefined; rl.question(

java byte【】数组与文件读写(增加新功能)

今天在测试直接写的文章: java byte[]数组与文件读写 时,想调用FileHelper类对字节数组以追加的方式写文件,结果无论怎样竟然数据录入不全,重新看了下文件的追加模式,提供了两种方式: 方式一: 字节数组写入文件(不追加) //将byte数组写入文件 public void createFile(String path, byte[] content) throws IOException { FileOutputStream fos = new FileOutputStream(