<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[LvLin_60的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/LvLin_60</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; LvLin_60]]></copyright><item><title><![CDATA[JavaScript 反转字符串、回文串判断]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/114491714</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/114491714</guid><author>LvLin_60</author><pubDate>Sun, 07 Mar 2021 18:08:40 +0800</pubDate><description><![CDATA[JavaScript 翻转字符串
let str = '123';
let newStr = str.split('').reverse().join('');
console.log(newStr); // 321

通过翻转字符串后跟原字符串对比，从而判断是否是回文串
function isPalindrome (s) {
    return s.split('').reverse().join('') === s;
}

console.log(isPalindrome ('123')); // f]]></description><category></category></item><item><title><![CDATA[JS 解 LeetCode：二叉树遍历（第94、102、144、145题）]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/113829676</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/113829676</guid><author>LvLin_60</author><pubDate>Tue, 16 Feb 2021 23:19:06 +0800</pubDate><description><![CDATA[JS 解 LeetCode：二叉树遍历（第94、102、144、145题） 点击查看原文

]]></description><category></category></item><item><title><![CDATA[手把手教你学会 Chrome 扩展（插件）开发]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/113751383</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/113751383</guid><author>LvLin_60</author><pubDate>Mon, 08 Feb 2021 09:02:10 +0800</pubDate><description><![CDATA[手把手教你学会 Chrome 插件开发

]]></description><category></category></item><item><title><![CDATA[实现网页禁止复制剪切功能]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/113439287</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/113439287</guid><author>LvLin_60</author><pubDate>Sat, 30 Jan 2021 16:38:41 +0800</pubDate><description><![CDATA[为了保护页面内容，或者是诱导用户注册，产品需要实现禁止用户复制剪切页面内容的操作，或者是登录之后才允许进行复制剪切操作。
本篇文章教你如何通过 JS、CSS 和 HTML 来禁止用户在页面进行复制剪切操作。
通过 JavaScript 实现
我们可以通过 JS 代码来禁用网页的复制事件、剪切事件、选择内容事件甚至是右键菜单事件。
// 禁止右键菜单
document.oncontextmenu = function(){ return false; };
// 禁止文字选择
document.onselec]]></description><category></category></item><item><title><![CDATA[JS 对象方法丢失 this]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/112974240</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/112974240</guid><author>LvLin_60</author><pubDate>Thu, 21 Jan 2021 22:53:38 +0800</pubDate><description><![CDATA[先来看一个问题：
let user = {
  name: "John",
  hi() { console.log(this.name); }
};

(user.hi)(); //(1)

let hi = user.hi;
hi(); //(2)

(user.name == "John" ? user.hi : user.bye)();  //(3)


(1)(2)(3) 分别输出什么？为什么？

运行一下代码，从结果可以看到，(2)和(3)丢失了this，(1)没有。
(1) 先执行了'.' 取]]></description><category></category></item><item><title><![CDATA[JavaScript 文件加载执行顺序]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/112760220</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/112760220</guid><author>LvLin_60</author><pubDate>Mon, 18 Jan 2021 00:13:15 +0800</pubDate><description><![CDATA[你不知道的关于众所周知，&lt;script&gt;标签是用于将JavaScript代码插入到HTML的主要方法。它具有内联和外部形式两种使用方式。
内联代码是将JavaScript代码直接写在标签里，外部形式则是通过标签的src属性引入外部的JavaScript文件。当&lt;script&gt;标签具有src属性的时候，标签内的代码会被忽略，如下所示:
&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;title&gt;Example HTML ]]></description><category></category></item><item><title><![CDATA[js 如何获取 emoji 字符串长度]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/112447703</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/112447703</guid><author>LvLin_60</author><pubDate>Sun, 10 Jan 2021 22:32:04 +0800</pubDate><description><![CDATA[所有常用的字符都是一个 2 字节的代码。但 2 字节只允许 65536 个组合，这对于表示每个可能的符号是不够的。
那怎么办？一个 2 字节不够那就用两个。我们将这种用一对 2 字节编码的符号称为“代理对”，长度是 2。
console.log( '????'.length ); // ?
console.log( '????'.length ); // ?
console.log( '????'.length ); // ?

String.fromCharCode和 str.charCodeAt 方法只]]></description><category></category></item><item><title><![CDATA[vue 输入框限制中英文及数字]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/112389113</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/112389113</guid><author>LvLin_60</author><pubDate>Sat, 09 Jan 2021 11:23:29 +0800</pubDate><description><![CDATA[vue 项目，通过 input 事件 结合 正则表达式实现输入框限制输入中英文及数字
&lt;el-input
	v-model.trim="value"
	@input="inputLimit"
/&gt;

//...
methods: {
	//...
	inputLimit(val) {
		// 正则匹配非中英文及数字的字符
		let reg = /[^\u4e00-\u9fa5a-zA-Z0-9]/;
		// 查找是否有非中英文及数字的字符
		// 没有则返回-1，有则返回对应位置
		l]]></description><category></category></item><item><title><![CDATA[Git 分支规范]]></title><link>https://blog.youkuaiyun.com/LvLin_60/article/details/112165554</link><guid>https://blog.youkuaiyun.com/LvLin_60/article/details/112165554</guid><author>LvLin_60</author><pubDate>Mon, 04 Jan 2021 00:09:42 +0800</pubDate><description><![CDATA[原文地址：https://mp.weixin.qq.com/s/2TOkp_sBINoW2N5cOgOLeQ

Git 是开源的分布式版本控制系统，用来记录团队成员在项目上所做的任何变更，方便追溯项目的各版本内容和修改历史，是一款功能强大的多人协作工具。
在学习使用这款工具之前，我们先要明确一些分支的命名规范和用途。各个团队的规范都不太相同，这里主要介绍我个人在工作中使用的分支规范供大家参考。
master分支：主分支，这里的项目内容与线上版本保持一致，是稳定的版本。由于 「master」容易让人联想到奴.]]></description><category></category></item></channel></rss>