![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
文章平均质量分 65
致良知丶
这个作者很懒,什么都没留下…
展开
-
token令牌常用的四种加密方式
1.base64 ‘防君子不防小人’ 方法 作用 参数 返回值 b64encode 将输入的参数转化为base64规则的串 预加密的明文,类型为bytes;例:b‘guoxiaonao’ base64对应编码的密文,类型为bytes;例:b’Z3VveGlhb25hbw==’ b64decode 将base64串 解密回 明文 base64密文,类型为bytes;例:b’Z3VveGlhb25hbw==’ 参数对应的明文,类型为bytes;例:b’guoxiaonao’ urlsaf原创 2021-07-05 08:49:24 · 6008 阅读 · 0 评论 -
js中的事件委托
1,什么是事件委托:通俗的讲,事件就是onclick,onmouseover,onmouseout,等就是事件,委托呢,就是让别人来做,这个事件本来是加在某些元素上的,然而你却加到别人身上来做,完成这个事件。 也就是:利用冒泡的原理,把事件加到父级上,触发执行效果。 好处呢:1,提高性能。 我们可以看一个例子:需要触发每个li来改变他们的背景颜色。 <ul id="ul"> <li>aaaaaaaa</li> <li>bbbbbbbb</li&g原创 2021-05-30 20:35:28 · 159 阅读 · 0 评论 -
JS的闭包
闭包 什么是闭包? 闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。 一、变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域。 变量的作用域无非就是两种:全局变量和局部变量。 Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 Js代码: var n=999; function f1(){ alert(n); } f1(); // 999 另一方面,在函数外部自然无法读原创 2021-05-30 20:28:30 · 152 阅读 · 0 评论 -
var let const 区别
var let const 区别 var: 如果使用关键字var声明一个变量,那么这个变量就属于当前的函数作用域,如果声明是发生在任何函数外的定成声明,那么这个表变量就书属于全局作用域。 例: var a = 1; function foo(){ var a =2; console.log(a); //2 } foo(); console.log(a): //1 如果在生命变量时,省略var的话,该变量就会成全局变量,如全局作用域中存在该变量,就会更新其值。 例: var a = 1 ; //此处声原创 2021-05-28 21:34:07 · 73 阅读 · 0 评论 -
Js作用域与作用域链详解
一:函数作用域 先看一小段代码: var scope="global"; function t(){ console.log(scope); var scope="local" console.log(scope); } t(); (PS: console.log()是firebug提供的调试工具,很好用,有兴趣的童鞋可以用下,比浏览器+alert好用多了) 第一句输出的是: “undefined”,而不是 “global” 第二讲输出的是:“local” 你可能会认为第一句会输出原创 2021-05-27 19:04:14 · 107 阅读 · 0 评论 -
JS中this指向问题,new的过程
this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象 这里调用方法f1的是window对象,也就是说this指向window对象,所以会出现this.user 为undefined 这里调用方法f1的是对象a,就是说this指向a对象,所以this.user为a对象里面的“二狗子” 接下来朝深处看看 这段代码跟例2 比就是多了个window. 结果还是一样的,想说明什么问题呢,看下段代码 结果变成“.原创 2021-05-27 18:45:02 · 379 阅读 · 0 评论 -
call、apply、bind
call,apply,bind都是为了改变函数体内this的指向,但三者都有所不同。 call,apply,bind的第一个参数都是this要指向的对象, bind是返回对应函数,便于稍后调用,call与apply是立即调用 call传递参数是按顺序传入,apply是把参数放入数组中 call(this指向的对象,参数1,参数2,参数3…); apply(this指向的对象,[参数1,参数2,参数3…]); ...原创 2021-05-26 21:54:59 · 55 阅读 · 0 评论 -
javascript原型与原型链
javascript原型与原型链 1. prototype 每个函数都有一个prototype属性,被称为显示原型 2._ proto _ 每个实例对象都会有_ _proto_ _属性,其被称为隐式原型 每一个实例对象的隐式原型_ _proto_ _属性指向自身构造函数的显式原型prototype 3. constructor 每个prototype原型都有一个constructor属性,指向它关联的构造函数。 4. 原型链 获取对象属性时,如果对象本身没有这个属性,那就会去他的原型__pro原创 2021-05-26 18:47:16 · 41 阅读 · 0 评论 -
argument
JS—arguments对象 什么是 arguments 百度说:arguments 是一个类数组对象。代表传给一个function的参数列表。(读不懂,看下面代码) 先看一段代码: function printArgs() { console.log(arguments); } printArgs(“A”, “a”, 0, { foo: “Hello, arguments” }); 执行结果是: [“A”, “a”, 0, Object] 控制台打印出来的是一个数组,但并不是真正的数组,所以说arg转载 2021-05-25 21:31:56 · 98 阅读 · 0 评论 -
js数据类型判断
js数据类型分两种 基本数据类型:String(字符串)、Number(数字) 、Boolean(布尔值)、Null(空)、Undefined(未定义) 引用数据类型:Object(对象)、Array(数组)、Function(函数) 1.typeof(基本数据类型) 但是:typeof null ==object typeof function == function 2.instanceof (主要用于引用数据类型的判断) 判断两个对象是否属于实例对象,一般用法为 A instanceo原创 2021-05-24 22:37:55 · 55 阅读 · 0 评论 -
JS数据类型
js数据类型分两种 基本数据类型:String(字符串)、Number(数字) 、Boolean(布尔值)、Null(空)、Undefined(未定义) 引用数据类型:Object(对象)、Array(数组)、Function(函数) String 字符串类型 特点: 1.字符串的单引号和双引号作用效果一样 。 2.字符串有length属性,能获取字符串的长度。 3.字符串的值是不可变的,所以很多的字符串的api不会改变原字符串值。 字符串转换: 1.String():适用于任何的数据类型。 2.原创 2021-05-24 22:32:07 · 192 阅读 · 0 评论 -
JS中一些常见数组方法
JS中一些常见数组方法 了解JS这门语言的同学都知道,js中有很多简单便捷的方法,今天给大家分享一部分js中数组里面的方法。 ES5数组方法 1. push() :接受多个参数,并将这些参数放置于数组尾部,返回新数组的长度,原始数组发生改变。 2. pop() :不接收参数,从数组尾部删除一个元素,并返回这个删除的元素,原数组发生改变。 3. unshift():接受多个参数并将这些参数放置于数组头部,返回新数组的长度,原数组发生改变。 4. shift() :不接受参数,从数组的头部删除一个元原创 2021-05-14 11:56:29 · 146 阅读 · 0 评论