- 博客(21)
- 收藏
- 关注
原创 ES6 事件循环机制
执行上下文(Execution Context)JavaScript中的运行环境大概包括三种情况:全局环境:JavaScript代码运行起来会首先进入该环境 函数环境:当函数被调用执行时,会进入当前函数中执行代码 eval:存在安全问题(因为它可以执行传给它的任何字符串,所以永远不要传入字符串或者来历不明和不受信任源的参数)不建议使用,可忽略每次当控制器转到可执行代码的时候,就会进入一个执行上下文。执行上下文可以理解为当前代码的执行环境,它会形成一个作用域。函数调用栈(call stack
2021-11-10 21:00:05 1083
原创 set集合和map集合
ES6中新增的数据存储结构,不同的场景使用不同的集合去存储数据。1 .set集合1.1 创建用于存储不重复的数据创建set集合```js const s1 = new Set(iterable) console.log(s1)```1.2 方法实例方法: add() 添加数据 has() 判断数据是否存在 delete() 删除数据,返回值为是否删除成功 clear() 清空集合 size 集合长度 只读 ...
2021-10-30 17:09:25 203
原创 Promise知识点
1.简介ES6将某一件事情可以发生异步的时候,分为2ge阶段unsettled未决阶段和settled已决阶段 事情总是从未决阶段逐步发展到已决阶段,并且未决阶段有控制通往已决阶段的能力,可以决定事情最终走向的状态ES6将程序分为3中状态:pending resolved rejectedpending状态:挂起(等待) 处于未决阶段,表示事情还在挂起最终的结果还没有出现resolved状态:已处理 处于已决阶段,表示整个事情已经出现了结果,并且可以按照正常的逻辑进行下去的结果rejec
2021-10-30 16:46:28 320
原创 ES6和ES5实现继承的区别
ES6类的使用及原理:ES6新增的Class(类)给我们编程带来了极大方便,ES6 的class可以看作只是一个语法糖,它的绝大部分功能,ES5 都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已, ES6中类实际上也是函数,我们使用typeof去判断类时可以看到其返回的就是function。在ES6中类的实现是基于原型来完成的,下面我们就来看看es6中类的实现原理举例说明:// 用户 function User(firstName, l.
2021-10-23 11:26:00 418
原创 前端网络—jQueryAJAX和跨域
1、jQueryAJAXjquery 库中已经封装了ajax请求的方法。jquery.ajax([settings])。发请求并且能得知成功还是失败。 type:类型,"POST"或者"GET",默认是"GET"。 url:发送请求的地址。 data:是一个对象,连同请求发送到服务器的数据 dataType:预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包含的MIME信息来智能判断,一般我们采用json个数,可以设置为"json"。
2021-10-23 10:52:32 1028
原创 TCP 协议中的三次握手与四次挥手
一、HTTP三次握手 第一次握手:客户端向服务端发出连接请求,将标志位SYN置为1,随机产生一个值seq=J;客户端进入SYN_SENT状态,等待服务器端确认 第二次握手:服务端响应客户端,并要求确认,将标志位SYN和ACK都置为1,ack=J+1,随机产生一个值seq=K;服务器端进入SYN_RCVD状态 第三次握手:客户端校验(ackJ+1 && ACK1),校验通过将标志位ACK置为1,ack=K+1响应服务端;服务端收到后校验(ackK+1 &&
2021-10-17 22:08:50 250
原创 常见的排序算法有哪些?
一、冒泡排序:从第一个数开始,相邻元素两两对比,小的数放前面。(每循环一次,最后一个数都会被确定下来,为每轮的最大数)1. 算法步骤比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。2. js代码实现function bubbleSort(arr) { .
2021-10-14 20:37:35 253
原创 移动端WEB开发之响应式布局知识点
1.0 响应式开发原理1.1 响应式开发原理就是使用媒体查询针对不同宽度的设备进行布局和样式的设置,从而适配不同设备的目的。设备的划分情况: 小于768的为超小屏幕(手机) 768~992之间的为小屏设备(平板) 992~1200的中等屏幕(桌面显示器) 大于1200的宽屏设备(大桌面显示器) 1.2 响应式布局容器响应式需要一个父级做为布局容器,来配合子级元素来实现变化效果。原理就是在不同屏幕下,通过媒体查询来改变这个布局容器的大小,再改变里面子
2021-10-07 01:09:02 275
原创 JS实现多物体运动
基本步骤:1.通过getElementsByTagName获取到要做多物体运动的元素2.然后for循环遍历元素,添加事件3.定义startMove函数,需要两个参数,当前“做运动”的元素,和目标值target具体代码如下:HTML代码:JS代码:...
2021-10-05 22:04:01 107
原创 JS实现数组去重方法总结(六种方法)
JS实现数组去重方法总结方法一:双层循环,外层循环元素,内层循环时比较值如果有相同的值则跳过,不相同则push进数组方法二:利用splice直接在原数组进行操作双层循环,外层循环元素,内层循环时比较值值相同时,则删去这个值注意点:删除元素之后,需要将数组的长度也减1.优点:简单易懂缺点:占用内存高,速度慢方法三:利用对象的属性不能相同的特点进行去重方法四:数组递归去重运用递归的思想先排序,然后从最后开始比较,遇到相同,则删除..
2021-10-04 23:59:30 2400
原创 jquery增删改查相关方法和事件绑定
一. jquery对象的增删改查相关方法1.增删改查的相关方法方法 说明 备注 .next() 获取下一个兄弟元素节点 .prev() 获取上一个兄弟元素节点 .nextAll() 获取当前查找元素后面的所有兄弟元素 .prevAll() 获取当前查找元素前面的所有兄弟元素 .nextUntil() 查找当前元素之后的所有同辈元素,直到遇到匹配的元素位置。 参数不加跟nextAll一样 掐头 jque
2021-10-04 01:11:42 186
原创 用 jQuery 写圆形 评分
<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metahttp-equiv="X-UA-Compatible"content="IE=edge"><metaname="viewport"content="width=device-width,initial-scale=1.0"><t...
2021-09-18 17:29:17 194
原创 ES5新增--满足条件的函数
vararr=[77,85,10,26,56,32];//是否所有都满足条件varresult=arr.every(function(item,i){returnitem>=60;})varresult=myFunction.every(arr,function(item,i){returnitem>=60;...
2021-08-25 20:58:27 115
原创 运用js--根据当前系统的月份, 输出这一个月每一天的星期
例如:2019年6月1日:星期六2019年6月2日:星期天2019年6月3日:星期一……2019年6月30日:星期天// 2019,6 - > 得到这个月的天数// new Date(2019,6-1,date).getDay()<script>//求出某年某月的每一天的星期functiongetEveryDay(year,m){//得到自定义的年月的星期数...
2021-08-07 16:06:44 486
原创 Javascript 判断一个数是否为素数的三种解法
判断一个数是否为素数(质数):只能被1和其本身整除的数。 方案一:只有两个因子 (计算因子的个数是否是2,如果是2,是素数) 方案二:因子之和 == 该数 + 1 方案三:通过一个开关控制该数是否是素数 (假设flag == true 是素数) 方案一解法: var a=prompt("输入一个数"); var num=0; for(i=1;i<=a;i++){ if(a%i==0){ num...
2021-08-01 23:59:58 4931
原创 运用js,不借用其他变量的情况下,改变两个数的值
var a = 123;var b = 456; 不借用其他变量的情况下,交换a和b的值 。方法一: vara=123;varb=456;vara=a+b;varb=a-b;vara=a-b;document.write("a的值:"+a+";");document.write("b的值:"+...
2021-07-28 20:22:27 234
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人