首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    JS防止站点被恶意保存

    很多同学网站都在用静态博客,安全轻量的同时也带来了些许麻烦,正如首图中那样,站点被别人全盘撸走,反而比自己文章关键字还高.自己辛辛苦苦的耕耘变成了别人的果实…所以本文提供一下通过JS手段防止网站被扒皮的手段...let siteprotect=1;//做一个flag 然后用于下面判断这段JS是否执行 if(self !...let whitelist=['huai.pub','127.0.0.1','localhost','']; //host白名单;空的话,为以file类型打开,是为了防止保存到本地调试,如果不担心此条...把上面部分放到一个不得不运行且打开页面就运行的JS里面(不建议放到公共资源部分,比如 jQuery之类的 )…当然 需要按照注释修改为自己的参数; 之后将这条JS 加密 然后将第二部分放到页面底部的JS...中,同时也加密后再引入(siteprotect变量可以改名 且改掉值,最好使用随机值) 重要的是 JS一定要加密 且放到对站点效果影响大的JS中… 这样就算被别人恶意保存,基本也不会有大的问题了

    3.9K20

    JS

    JS的闭用法给开发带来了极大的便利,它的使用方式非常自然,以至于很多同学并不很了解闭,却可以在实际开发中顺畅的使用了 例如下面的代码,给button添加一个点击事件,很多人经常这么写,实际上这就是一个闭...要了解闭,需要先了解下JS变量的作用域 变量的作用域无非就是两种:全局变量和局部变量 特点是 函数内部可以访问外部变量,函数外部不能访问函数内的变量 例如 ?...这个实现方式就是闭 什么是闭其实就是将函数内部和函数外部连接起来的一座桥梁,可以让函数外部的代码访问函数内容变量,可以把闭简单理解成“定义在一个函数内部的函数” 闭包在子作用域中保存了一份在父级作用域取得的变量...原因 第一种方式出现错误,是因为在for循环结束后,变量item的值已经变为了最后一项,所以当点击事件执行时,读取的信息总是最后一项的信息 而第二个方式就是利用了闭会把父级变量保存到自己作用域的特点...,这样每次循环添加点击事件时,把当前循环中变量值传给了function,这样function就保存了正确的变量值

    4.2K40

    JS

    定义 闭是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。...就是在另一个作用域中保存了一份它从上一级函数或者作用域得到的变量,而这些变量是不会随上一级函数的执行完成而销毁。 前提条件 计算机中的内存变量如果有被引用着的话,则系统是不会将之回收的。...只要我们能够一直持有这个引用,则就可以令局部变量避免被回收——这是闭概念成立的前提 闭用途 可以读取到函数内部的变量 可以让函数内部变量保持在内存中 避免全局变量的污染 私有成员的存在...注意事项 闭会让函数中的变量都被保存到内存中,内存消耗较大,不能滥用闭,否则会导致性能和内存泄漏问题(退出函数之前可以将不用的局部变量全部删除) 闭能改变父函内部变量的值,一定要小心使用 示例

    2.5K110

    js

    目录 闭的概念 闭的用途 代码实例 注意点 两个代码片段的对比 闭的概念 简单来说,闭就是定义在一个函数内部的函数 闭的用途 可以读取函数内部的变量 让这些变量的值始终保持在内存中...var result = f1() // 999 result() fnAdd() // 1000 result() 代码分析 第一次值为999,第二次值为1000,证明函数f1中的局部变量n一直保存在内存中...nAdd的值是一个匿名函数(anonymous function),而这个匿名函数本身也是一个闭。 函数调用相当于后面有两个括号,因为函数f1返回的是函数名f2。...注意点及解决方法 由于闭会使得函数中的变量都被保存在内存中,内存消耗很大,所以不能滥用闭,否则会造成网页的性能问题,在IE中可能导致内存泄露。...闭会在父函数外部,改变父函数内部变量的值。 解决方法:不要随便改变父函数内部变量的值。 返回闭时牢记的一点就是:返回函数不要引用任何循环变量,或者后续会发生变化的变量。

    2.3K30
    领券