lucy

js中数组方法大全

匿名 (未验证) 提交于 2019-12-03 00:03:02
js数组方法大全    一: 前言   我们在学到js中数组的时候,我们会接触到js中数组的一些方法,这些方法对我们来说,可以很遍历的达到我们想要的结果,但是因为方法比较多,有些方法也不常用,可能会过一段时间就会忘记,那么在这里我整理了21个数组的方法,供大家查阅。 方法名 对应版本 功能 原数组是否改变 concat() ES5- 合并数组,并返回合并之后的数据 n join() ES5- 使用分隔符,将数组转为字符串并返回 n pop() ES5- 删除最后一位,并返回删除的数据 y shift() ES5- 删除第一位,并返回删除的数据 y unshift() ES5- 在第一位新增一或多个数据,返回长度 y push() ES5- 在最后一位新增一或多个数据,返回长度 y reverse() ES5- 反转数组,返回结果 y slice() ES5- 截取指定位置的数组,并返回 n sort() ES5- 排序(字符规则),返回结果 y splice() ES5- 删除指定位置,并替换,返回删除的数据 y toString() ES5- 直接转为字符串,并返回 n valueOf() ES5- 返回数组对象的原始值 n indexOf() ES5 查询并返回数据的索引 n lastIndexOf() ES5 反向查询并返回数据的索引 n forEach() ES5

VUE之如何获取select的节点文本

匿名 (未验证) 提交于 2019-12-02 23:43:01
<template> <a-select labelInValue :defaultValue="{ key: 'lucy' }" style="width: 120px" @change="handleChange"> <a-select-option value="jack">Jack (100)</a-select-option> <a-select-option value="lucy">Lucy (101)</a-select-option> </a-select> </template> <script> export default { methods: { handleChange(value) { console.log(value); // { key: "lucy", label: "Lucy (101)" } } } } </script> 参考网址: https://vue.ant.design/components/select-cn/#components-select-demo-automatic-tokenization 文章来源: https://blog.csdn.net/ljljlj1993/article/details/92641426

Pikachu漏洞练习平台实验——CSRF(三)

情到浓时终转凉″ 提交于 2019-11-30 12:12:38
概述   - 攻击场景例子   - CSRF攻击需要条件   - CSRF和XSS的区别   - 如何确认一个目标站点是否有CSRF漏洞 CSRF(get) CSRF(post) CSRF(token) 防护措施 概述 CSRF 是 Cross Site Request Forgery 的 简称,中文名为 跨域请求伪造 在CSRF的攻击场景中, 攻击者会伪造一个请求(一般是一个链接) 然后欺骗目标用户进行点击,用户一旦点击了这个请求,这个攻击也就完成了 所以CSRF攻击也被称为“one click”攻击 攻击场景例子 lucy想要在购物网站上 修改购物地址 ,这个操作是lucy通过浏览器向后端发送了请求。 这个请求里面包含了lucy的新有货地址,如果是通过GET提交的,那么会以URL传参的方式的方式将新的地址提交给后台,类似上图中的URL, 相当于点了链接就能修改个人信息 。 如果这时候攻击者想要修改lucy的信息怎么办?那么他需要取得lucy的账号, 获得登录权限 。这时候他可以将修改个人信息的 请求伪造 一下,构造类似下图中的URL,引诱lucy在登录状态下进行点击,这样攻击就成功了。 CSRF攻击需要条件 ① 目标网站没有对修改个人信息修改的请求进行防CSRF处理,导致该请求容易被伪造 因此,判断一个网站有没有CSRF漏洞,其实就是判断对关键信息(密码等)的操作(增删改

this指向及改变this指向的方法

隐身守侯 提交于 2019-11-27 10:00:40
一、函数的调用方式决定了 this 的指向不同,但总的原则,this指的是调用函数的那个对象: 1.普通函数调用,此时 this 指向 全局对象window function fn() { console.log(this); // window } fn(); // window.fn(),此处默认省略window 2.在严格模式下"use strict",为undefined. function foo(){ "use strict"; //表示使用严格模式 console.log(this); //在严格模式下this指向undefined } foo(); 3.对象的方法里调用,this指向调用该方法的对象 let person = { name:'Lucy', age:20, say:function(){ console.log(this); //object person console.log(this.name); //Lucy } } person.say(); 4.构造函数调用, 此时 this 指向 new出来的实例对象 function Person(age, name) { this.age = age; this.name = name console.log(this) // 此处 this 分别指向 Person 的实例对象 p1 p2 } var

数据结构下篇

偶尔善良 提交于 2019-11-27 07:23:40
4-3 集合 集合(set)是在ES6 中引入的一种数据结构,用于表示唯一值的集合,所以它不能包含重复值。接 下来这一小节,就让我们具体来看一下这种新的数据结构。 4-3-1 什么是集合 在ES6 标准制定以前,可选的数据结构类型有限,可以说只有数组这种数据结构。而数组使用的 又是数值型索引,因而经常被用于来模拟队列和栈的行为。但是如果需要使用非数值型索引,就 会用非数组对象创建所需的数据结构,而这就是 Set集合与后面一节要介绍的Map 映射的早期实 现。 Set集合是一种无重复元素的列表,这是这种数据结构的最大的一个特点。 4-3-2 创建集合 要创建一个集合,方法很简单,直接使用new就可以创建一个Set 对象。如果想要集合在创建时 就包含初始值,那么我们可以传入一个数组进去。 let s1 = new Set(); let s2 = new Set([1,2,3]); console.log(s1); //Set {} console.log(s2); //Set { 1, 2, 3 } 4-3-3 给集合添加值 使用add()方法可以给一个集合添加值,由于调用add()方法以后返回的又是一个Set 对象,所 以我们能连续调用 add() 方法进行值的添加,这种像链条一样的方法调用方式被称为链式调 用。 let s1 = new Set(); s1.add(1);