当然JS作为一门脚本语言,在node的环境下面还是可以 *** 作文件的
如果是公司内部项目的话,楼主可以考虑用NW.js或者electron这样的工具做成桌面应用,这些应用可以 *** 作文件,当然会稍微有一点学习成本
JS是浏览器脚本文件,实现页面内容的计算、显示和交互。例如点击按钮d出一个详细信息,播放音频,展开二三级菜单,显示更多内容及滚动显示轮播等等。页面样式和弱交互一般CSS可以实现,但复杂的就需要JS来实现。随着JS的发展,JS在浏览器端能实现的功能越来越多,例如经典的JQuery,最近几年发展起来的React、Angularjs和Vue.js,这些JS框架给前端开发带来了极大的便利,可以非常高效的实现复杂的页面数据调用和交互,网页的功能也越来越强大,甚至出现了非常多的网页运用,例如百度脑图、微信图文编辑器等等在线工具。但是,所有这些功能仅限于浏览器端,JS依赖浏览器来解释执行。浏览器作为安装到系统中的原生软件,是有权限 *** 作本地文件的,比如浏览器自动更新、上传文件和下载文件。但是,如果把 *** 作本地文件的权限开放给JS,就意味着,开发者只需要写一个JS,放到某个地址,用户打开这个链接,浏览器执行JS,就开始 *** 作本地文件。于是,显而易见,只需要一个JS就可以做以下事情:自动上传用户的文件、资料,删除、修改用户的文件、软件,自动下载文件、软件甚至木马到用户本地。
计算机安全问题最大的隐患就是互联网,我们连网站的安全都无法完全保障,又怎么能开放那么大的原生软件才有的权限给网页自己的脚本文件JS呢?如果JS能修改和 *** 作本地文件,那么只要打开一个连接,就相当于直接装上一个不认识的软件到自己的系统里!可以搜索查询到指定目录下发送你的聊天记录、帐号资料等等,这是多么危险的行为。如果一个浏览器如此不完全,谁还会用这种浏览器呢?
所以JS语言在设计之处,就没有这个功能。直到HTML5的File API,也只能实现读取(需要用户主动 *** 作)本地文件(只读方式),在内存中 *** 作和修改,修改完了以后只能上传或者download,对本地原有文件无法产生任何影响。
同时浏览器也给很多 *** 作限制了权限,例如上传文件、上传图片换头像等功能,只能用户通过主动点击事件和主动选择文件来实现,JS无法自动上传。JS本身有打开新窗口的功能,但是也是需要用户主动点击或者Enter键才能触发,否则会被浏览器拦截,并显示被拦截信息。高危行为,都有限制。
当然,也不是完全没有办法,你可以通过Node.js实现,让JS像PHP一样实现后端脚本功能。前提是要自己安装配置一堆东西,你的JS就能 *** 作本地文件了。但是用户肯定不会这么干,也不知道怎么安装,浏览器本身就有安全隔离,如果你是自己要实现JS *** 作本地文件可以用这个思路,如果是给别人用户非常困难。
如果在IE的安全选项里设置了相应的权限就可以,按一般默认的设置,网上的网页里的js不能读取硬盘里的文件, *** 作文件,文件夹。单独运行的在本机的.js后缀的js脚本文件(不是在浏览器里运行)这种js脚本文件可以读取硬盘里的文件, *** 作文件,文件夹。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)