<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[weixin_42952411的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/weixin_42952411</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; weixin_42952411]]></copyright><item><title><![CDATA[vue3(h5适配)做个记录，避免自己以后忘了哈哈]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/133900137</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/133900137</guid><author>weixin_42952411</author><pubDate>Wed, 18 Oct 2023 10:42:41 +0800</pubDate><description><![CDATA[原文出自：https://blog.youkuaiyun.com/qq1195566313/article/details/132526254。自己做了一个实现和调整，希望对大家有用。rem根据html的font-size进行缩放，可以自适应，缺点就是需要计算每个屏幕的font-size。vw，vh是相对viewport视口单位，配合meate可以直接使用无需计算。这样就可以适配了··自己经过实验可是适配很多机型了，目前还没有发现bug。1.px是相对单位固定的，无法自适应，不会随着屏幕尺寸的改变而改变.]]></description><category></category></item><item><title><![CDATA[call、apply、bind的使用方法和原理]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/132092497</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/132092497</guid><author>weixin_42952411</author><pubDate>Fri, 04 Aug 2023 10:07:10 +0800</pubDate><description><![CDATA[1.原理：根据隐式的绑定规则obj.fn 当中的this指向的就是obj，那么我们只需要在调用call 方法时候，将当前的this赋值给要改变的对象身上，那么this的指向就根据隐式规则，绑定到了新的对象上，从而达到改变this指向的问题。在js中有三种办法改变this的调用指向，ccall、apply、bind。]]></description><category></category></item><item><title><![CDATA[记录前端踩坑·····不定时更新]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/131632254</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/131632254</guid><author>weixin_42952411</author><pubDate>Mon, 10 Jul 2023 10:21:43 +0800</pubDate><description><![CDATA[只要是浏览器能识别的文件就会在可直接打开，其他无法识别的文件可以下载 ，如.zip。也就是说如果你的图片地址和当前的地址不一样download不起作用，会直接打开。上面的代码可以实现下载所有的文件，但是这里面有坑啊！1.如果是图片，则可以用canvas方式保存图片在下载。2.使用file-saver导出文件。3.其他处理方法待补充。]]></description><category></category></item><item><title><![CDATA[axios请求失败重试请求]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/127808840</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/127808840</guid><author>weixin_42952411</author><pubDate>Fri, 11 Nov 2022 17:04:09 +0800</pubDate><description><![CDATA[axios请求失败后重新发起http请求]]></description><category></category></item><item><title><![CDATA[node环境下写入json文件时出现的nul问题]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/121414493</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/121414493</guid><author>weixin_42952411</author><pubDate>Fri, 19 Nov 2021 09:07:11 +0800</pubDate><description><![CDATA[示例## 原因
再写入数据时没有对数据进行字符串转化。
代码
利用JSON.stringify转成字符串
const fs = require('fs')
let buf =   Buffer.allocUnsafe(20).fill(0)
fs.writeFileSync("./111.json",JSON.stringify(buf))
buffer在写入文件时，如果用JSON.stringify转化成字符串时
{"type":"Buffer","data":[0,0,0,0,0,0,0,0,0,0,0]]></description><category></category></item><item><title><![CDATA[依靠代码的node启停功能]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/121207028</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/121207028</guid><author>weixin_42952411</author><pubDate>Mon, 08 Nov 2021 15:49:39 +0800</pubDate><description><![CDATA[用代码控制程序启停的几种实现方式
一、pm2方式
​		1.1原理：利用pm2模块启动node服务，有进程守护的功能，保证程序进程在死亡时可以自动重启。并且可以利用配置文件监听某重要文件修改时重启服务。
​		1.2 代码
const express = require("express");
const fs  =require('fs');
const api = express();
let fsread = fs.readFileSync('./1.txt')
api.use('/get',func]]></description><category></category></item><item><title><![CDATA[多层嵌套对象得取值和赋值问题]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/121121872</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/121121872</guid><author>weixin_42952411</author><pubDate>Wed, 03 Nov 2021 15:28:35 +0800</pubDate><description><![CDATA[1.多层嵌套对象得取值。
let obj ={
    core:{
        sys_model:55
    },
    detector:{
        conv:11,
        gap_width:15
    }
}
取值
obj.core.sys_model ==&gt;55

2.多层嵌套对象得赋值
let obj ={
    core:{
        sys_model:55
    },
    detector:{
        conv:11,
      ]]></description><category></category></item><item><title><![CDATA[node环境下的全局变量]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/120701676</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/120701676</guid><author>weixin_42952411</author><pubDate>Mon, 11 Oct 2021 14:54:22 +0800</pubDate><description><![CDATA[node环境下的几种全局变量写法一、global二、模块导出三、利用闭包
一、global
global是node环境下的全局变量，可以在任意的代码块内使用，比较常用的变量有__dirname，__filename，exports，module,equire();
使用方法：
	赋值:global.aaa =5；(任意模块内都可使用)
	获取:global.aaa (任意模块内都可使用)
	优点：使用简单。
	缺点：相当于给全局多挂载属性，容易造成互相覆盖等问题。

二、模块导出
 新建一个test文件，并]]></description><category></category></item><item><title><![CDATA[十六进制的浮点数转化为十进制]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/119910263</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/119910263</guid><author>weixin_42952411</author><pubDate>Thu, 26 Aug 2021 09:10:12 +0800</pubDate><description><![CDATA[这里写自定义目录标题转化公式新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
转化公式
/*
* -------负数
* 二进制 11000001011110101010011111101111
* 十进制 -15.666
]]></description><category></category></item><item><title><![CDATA[Javascript异步编程（总结）]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116758061</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116758061</guid><author>weixin_42952411</author><pubDate>Fri, 14 May 2021 17:00:32 +0800</pubDate><description><![CDATA[一、Generator
异步编程的方法

回调函数
事件监听
发布/订阅
promise对象

什么是异步？
当前操作A执行一半时候去，操作b事件，一段时间后在操作A事件。(存在中断操作)

Generator 函数
Generator在ES6实现，可以交出函数的执行权（让函数暂时停止）
function* gen(x){
  var y = yield x + 2;
  return y;
}

整个Generator 函数就是一个异步容器，在异步操作需要暂停的时候，用yield 标记
var g = g]]></description><category></category></item><item><title><![CDATA[利用策略模式实现表单验证]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116698186</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116698186</guid><author>weixin_42952411</author><pubDate>Wed, 12 May 2021 10:46:19 +0800</pubDate><description><![CDATA[普通表单验证
&lt;!DOCTYPE html&gt;
&lt;html lang="en"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;title&gt;Title&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;form action="http:// xxx.com/register" id="registerForm" method="post"&gt;
    请输入用户名：&lt;]]></description><category></category></item><item><title><![CDATA[前端处理后端返回文件问题]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116659170</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116659170</guid><author>weixin_42952411</author><pubDate>Tue, 11 May 2021 16:11:45 +0800</pubDate><description><![CDATA[标题
 		axios({
                method: 'GET',
                url: 'http://localhost:3000/log/down',
                responseType: 'blob'
            }).then((res) =&gt; {
                if (res.data.type == 'application/json') {
                    //错误返回]]></description><category></category></item><item><title><![CDATA[MomentJs 常用api总结]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116479956</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116479956</guid><author>weixin_42952411</author><pubDate>Fri, 07 May 2021 08:57:22 +0800</pubDate><description><![CDATA[从 MomentJs 到 DayJs
MomentJs
http://momentjs.cn/
Moment.js是一个轻量级的JavaScript时间库，它方便了日常开发中对时间的操作。如：获取时间，设置时间，格式化时间，比较时间等等
MomentJs 常用 API
获取时间


获取当前时间
moment()


获取今天0时0分0秒
moment().startOf('day')


获取本周第一天(周日)0时0分0秒
moment().startOf('week')


获取本周周一0时0分0秒
m]]></description><category></category></item><item><title><![CDATA[Node实现8位bmp图]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116236935</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116236935</guid><author>weixin_42952411</author><pubDate>Wed, 28 Apr 2021 17:30:14 +0800</pubDate><description><![CDATA[Bmp是什么？
BMP是英文Bitmap（位图）的简写，它是Windows操作系统中的标准图像文件格式，能够被多种Windows应用程序所支持。随着Windows操作系统的流行与丰富的Windows应用程序的开发，BMP位图格式理所当然地被广泛应用。这种格式的特点是包含的图像信息较丰富，几乎不进行压缩，但由此导致了它与生俱来的缺点–占用磁盘空间过大。所以，目前BMP在单机上比较流行。（来自百度百科的粘贴）
Bmp图片说明
Bmp有2，4，8，16，24，32位图，24以上图位真彩色，位表示图片可生成的颜色
]]></description><category></category></item><item><title><![CDATA[仿写部分JavaScriptApi]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116133974</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116133974</guid><author>weixin_42952411</author><pubDate>Sun, 25 Apr 2021 17:28:59 +0800</pubDate><description><![CDATA[call实现
/**
 * call 实现
 * * 本质就是拿到传递的参数进行调用
 *   利用this 指向来改变调用者
 * */
Function.prototype.hjhCall = function (){
    var rst = null,
        obj = arguments[0] || window,  //拿到第一个参数
        len = arguments.length, //拿到arguments长度
        argArr = [];
    //]]></description><category></category></item><item><title><![CDATA[仿写Promise（详细解释每一步的作用）]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/116020210</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/116020210</guid><author>weixin_42952411</author><pubDate>Fri, 23 Apr 2021 17:59:54 +0800</pubDate><description><![CDATA[Promse基本用法
function  testPrm (){
    let promise = new Promise((resolve, reject) =&gt;{
        let r = parseInt(Math.random()*10)
        if(r%2 ==0){
            resolve("成功")
        }else {
            reject('失败')
        }
    } )
    return promise
]]></description><category></category></item><item><title><![CDATA[nodejs 环境下使用opencv处理图像(三)]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/115728349</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/115728349</guid><author>weixin_42952411</author><pubDate>Thu, 15 Apr 2021 16:03:14 +0800</pubDate><description><![CDATA[一、感兴趣区域
const {imread,imshow,Rect,waitKey,COLOR_RGB2GRAY,COLOR_GRAY2BGR} = require('opencv4nodejs');
let src = imread('./imge/1.jpg') //原始图
imshow('first',src) //展示
let region = src.getRegion(new Rect(200, 200, 200, 200)); //在图像200，200的位置截取图像长度为200*200的图像
]]></description><category></category></item><item><title><![CDATA[Node环境压缩文件和解压文件]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/115536194</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/115536194</guid><author>weixin_42952411</author><pubDate>Fri, 09 Apr 2021 08:39:17 +0800</pubDate><description><![CDATA[一、压缩文件
1.1压缩文件需要用到得模块是 archiver（下载量蛮高得几百万每周）
文档地址：https://www.npmjs.com/package/archiver

1.2 安装
npm install archiver --save

1.3示例代码
const archiver = require('archiver')
const fs = require('fs')
const archive = async (path) =&gt; {
    return new Promise(]]></description><category></category></item><item><title><![CDATA[基于python的大米粒分割（本文适合两个凹点的粘连物体）]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/115358363</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/115358363</guid><author>weixin_42952411</author><pubDate>Wed, 31 Mar 2021 19:33:39 +0800</pubDate><description><![CDATA[一、参考下面的文章，本文对该文章未实现的地方进行补充
https://blog.youkuaiyun.com/m0_37968030/article/details/112847031

二、项目原图（本文的环境是opencv4.5版本）

三、处理流程
 图像输入--&gt;二值化--&gt;形态学运算--&gt;轮廓提取--&gt;凸包检测--&gt;消除粘连--&gt;标记

四、代码实现
在这里插入代码片 #cv2.cv2 用于代码提示
import cv2.cv2 as cv
import numpy as ]]></description><category></category></item><item><title><![CDATA[js判断是否是同一局域网]]></title><link>https://blog.youkuaiyun.com/weixin_42952411/article/details/115306276</link><guid>https://blog.youkuaiyun.com/weixin_42952411/article/details/115306276</guid><author>weixin_42952411</author><pubDate>Mon, 29 Mar 2021 17:18:13 +0800</pubDate><description><![CDATA[一、原理
让ip地址和子网掩码进行与操作，如果最后得到的结果相同代表是同一局域网
如：
let ip1 = '172.18.2.200';  
let zw1 = '255.255.255.0';
---&gt; 172&amp;255 , 18&amp;255 , 2&amp;255 , 200&amp;0,
let ip2 = '172.18.3.139';
let zw2 = '255.255.255.0'
---&gt;172&amp;255 , 18&amp;255 , 3&amp;255 , 1]]></description><category></category></item></channel></rss>