获得徽章 0
- 关于include的第二个参数,是fromindex;如果它大于等于数组长度,那么就返回false;如果它是一个负值,那么就通过数组长度与其相加的结果作为新的fromindex; 如果新值仍然为负值,那么就搜索整个数组,相当于fromindex不作数;在这之前有find()和indexOf()两个方法indexOf()缺点是无法识别NaN注意find()的语法引入了求幂运算符: **ES8优于fetch API向服务器发送http请求的asycn,其中可以使用await关键字;返回值是Promise;关于Promise方法的举例:entries()返回键值对数组;values,指, key-values 当中的 values;padStart();与padEnd();把第二个参数填充到首部与尾部;ES9.next方法 异步迭代器,可以返回一展开评论点赞
- 什么是组件实例?
定义:组件是可复用的html实例,可以拓展html元素,封装可重用的代码;
一些常见的组件实例
data,除data外,其他都是只读的
props,指通过props选项声明的props
el,组建实例管理的dom根节点;其作用跟模版引用一样,优先使用模版引用;
options,已解析的用于实例化当前组件的组件选项;(后面再讨论)
parent,指向当前组件可能存在的父组件实例,如果是顶层则为null
root,指向根组件实例,没有则指向它自己;展开评论点赞 - hooksuseState是一个状态hook语法:const [state,setState] = useState(initialState);state 初始值 就是 initialState;setState 就是可以让你修改state并重新触发渲染; 它可以是一个任意值, 也可以是一个"更新函数(必须是纯函数)", 返回更新之后的值;纯函数: 与外部无关, 没有副作用; .并且如果你要多次调用实现一个计数器, 需要箭头函数;setState(state=>state+1)一般是在一个组件的顶层调用, 来声明一个state ; 注意事项展开评论点赞
- dom和事件机制
流程三步走
1.获取dom元素
获取标签:document.querySelector
2.给dom元素绑定事件
3.声明事件处理程序
事件流
事件冒泡:click 事件沿DOM 树一路向上,在经过的每个节点上依次触发,直至到达 document 对象。
阻止事件冒泡:直接使用event.stopPropagation()
事件捕获:意思是最不具体的节点应该最先收到事件,而最具体的节点应该最后收到事件;(也就是:与事件冒泡相反)
事件流: 事件捕获--到达目标--事件冒泡
addEventlistener(),第三个参数,默认false,即事件冒泡; 若为true,则是事件捕获;
事件处理程序
DOM0事件处理程序
用onclick,不能追加执行,只有最后一个生效;
DOM2事件处理程序
用addEventlistener('click', fun, true);
可以追加执行事件,但是只有最后一个生效;
解绑时:removeEventListener('事件类型',具名函数事件处理程序);
事件对象
event 对象只在事件处理程序执行期间存在,一旦执行完毕,就会被销毁。
在react与js中, 处理事件时, 会用到事件对象
常用的事件对象
以下是事件对象的一些常用属性和方法:
type:
事件的类型,例如:"click", "mousedown", "mouseup", "keydown", 等。展开评论点赞 - 真的每天都要来写,不然你真的不知道自己学了些什么,或者说,干了些什么。
A
找导师,找个人来带你。
每天学一些概念,最好是一些可以听懂的。
别去考研,可能这个才是真的苦工。
认识老师,去做国家级的项目,可以赚很多钱。
招标作假,伪造招标书。招标内定,走个形式。
B
人的欲望是没有止境的,你要做的是过好自己的生活,尽自己的努力,然后开摆。展开评论点赞 - 1,Ajax async javascript and xml
可以发送get与post等请求,实现在页面不刷新的情况下,向服务器请求数据;
2,webpack,和前端模块化
目前学到的地方,模块化是为了解决变量全局污染和管理混乱的问题;
一个模块执行一个功能;
那篇文章真的没有理解透彻;之后,再去看看;
7,在产品模式下,webpack打包好像就是给它封到了一个匿名函数里面;
3,学习了二叉树;
用递归的方式可以很好的进行前中后序遍历;
展开评论点赞 - #新人报道#
1,Single-File Component(SFC),单文件组件,包含了 html,css,js ;
(以下由3.26日补充)
2,确定了自己的学习方向是用组合式api,也就是<script setup>的那一种用法;
3,一般写法是:const (某个名字)xxx = reative({ count:0 })
之后可以有 <button @click="xxx.count++">
注意 reactive()一般针对对象,包括map和set,but,ref 可以弄所有的类型,包括整形;
4,关于单独的javascript:
4,迭代循环:其中in循环是遍历其中所有的对象的所有可枚举属性 , 普通的数字会遍历其索引,所以是从0开始,1,2,3这样一直下去;
var xx = [ 1,2,3,4,5,6 ]
xx . abc = '';
这样遍历之后,abc也会被输出;
5, 其中of循环 , 就是用来遍历数组的,会直接遍历完;for( var a in xx )
6,关于sql注入,目前只知道字符型和搜索型的注入点; 一般通过输入引号来判断是否可以注入;
其次,对于insert插入到数据类型的接口 , 可以用某个函数基于报错来注入;
7,对于5.0版本以上的mysql,有 information_schema 这个表 , 一般是从information_schema.tables 到 information_schema.column ;
(这里还是太模糊了,你有空自己去数据库里实际的看一看就知道了);
8,名词:
拖库:就是盗数据库;
洗库,拿它变现;
撞库,拿已知的信息去登录别的站点;了解管理员的登录习惯;
社工库,查一个网站,要最先查注册者的邮箱信息等等,放在社工库里面查是否泄露;
如果泄露可以尝试直接登录;
9, 注入时,一般先尝试and/or/xor 1=1,1=2 等等判断是否是注入点 , 接着用order by 来判断字段个数,长度,等等;展开评论点赞