• 欢迎来到我的博客
  • [email protected]

JS任务管理:线程、异步任务

JS线程 JS是单线程的,直接实时执行的任务称为宏任务 异步任务 JS有两个异步任务队列,一个是宏任务队列,一个是微任务队列 宏任务队列 存放通过 setInterval() 和 setTimeout() 添加的任务 微任务队列 当一个 Promise 对象 resolve() 或者 reject() 后,其后续任务(传递给then方法的回调函数),会被加入……

php 小技巧:批量处理>单个处理

V1 如果在处理某个数据时异常,就无法继续处理后续数据。 //批量处理 V1 function handleMuch($data_list) { foreach ($data_list as $data) { //这里是处理逻辑 //如果在这里 发生异常 的话,后续的 $data 就无法被处理 } ……

防止、检测网站广告被浏览器屏蔽

前言 现在很多浏览器都有广告屏蔽功能,这对于站长来说是一件很伤的事情。 站长要解决这个问题,首先要了解广告屏蔽原理。 广告屏蔽原理以及解决办法 通过关键词识别广告 以下情况可能会被屏蔽 如果你的 js 文件名或者图片文件名包含 “ad” 关键词(屏蔽原理:拦截请求) 如果你的网页中某个 dom 的 id 包含 “ad&#……

防止手机用户手动标记屏蔽广告

方法 很多浏览器都可以手动标记广告并屏蔽,长按广告后会弹出菜单,然后可以标记为广告。 我们可以为广告 dom touchstart 事件添加一个监听器,跳转到广告罗落地页。 这样用户就无法长按广告,因为一碰到广告就触发 touchstart ,跳到广告落地页,无法弹出菜单。 缺点 1.仅对部分浏览器有效,例如:对 via 有效,夸克无效 2.本来用户是想上下……

自顶向下、自底向上、排序算法稳定性

自顶向下 问题的解决依赖于子问题的解决,一般是递归的形式 自底向上 问题的解决不依赖子问题的解决,在解决问题时,子问题已经解决,一般是迭代的形式 排序算法稳定性 如果带排序元素中含有多个相同的元素,例如 68779 中含有两个7,在排序之后,这两个7的相对位置没有发生改变,则是稳定的排序算法,否则反之。 ……

PHP 实时输出

基础知识 PHP 输出缓冲区 Nginx //通知 nginx 关闭 proxy_buffering, 当然你要确保你的nginx中没有使用proxy_ignore_headers来忽略X-Accel-Buffering header('X-Accel-Buffering: no'); //开启 output_buffering ob_start(……

Laravel 踩坑记录 + 小本本

运行 php artisan 错误 In UrlGenerator.php line 120: Argument 2 passed to Illuminate\Routing\UrlGenerator::__construct() must be an instance of Illuminate\Http\Request, null given, call……

正则小本本

非捕获元 ?:、?=、?<=、?!、?<! 这里主要记一下 ?: ,可以使被匹配到的字符串继续参与后面的匹配,但是无法被捕获。 转义符号 \ 这样无法匹配成功,因为在 PHP 解析过程中, \ 被当做转义符解析了 给子表达式命名 // 两种方式,第一种中的 P 有的语言可以不用加(如PHP) (?P<name>pattern) ……

PHP 踩坑记录 + 小本本

PHP不支持逗号表达式 不支持以下写法 $a = 1; $b = 2; $c = 3; $test = $a+$b,$b+$c; //不支持,会报错 错误相关 error_reporting(“E_ALL”)和ini_set(“display_errors”, “on”)的区别? ……

PHP 输出缓冲区

是什么 使用 echo 等输出,若未开启输出缓冲区,则 php 会立即将输出内容发送给 nginx;若开启,则会先存到缓冲区,等缓冲区满了再发送给 nginx,或者调用函数手动发送。 举例子 php→(output_buffering)→fastcgi→(fastcgi_buffer)→nginx→(proxy_buffering)→浏览器 outpu……