javascript
mondayes
测试只能证明程序有错误,而不能证明程序没有错误
展开
-
js简单实现vue中的双向绑定
Vue实现数据双向绑定的原理vue实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式。通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应监听回调。js简单实现<!DOCTYPE html><html lang="en"><head> ...原创 2020-03-08 08:23:55 · 323 阅读 · 0 评论 -
冒泡排序
1、冒泡排序冒泡排序是将每个数和前一个数进行比较,大的往后排,小的往前排 例如现在有一个数组 [2,5,1,3,6];[2,5,1,3,6]第一轮比较时 将2和5比,5本来就比2大,因此不要换,然后又将5和1比,此时5大于1,因此位置互换,在将5和3,5大于3位置互换,最后5和6比,5不大于6,位置不变得出结果如下 [2,1,3,5,6] 第一轮比完后已经将最大的比出来了第二轮 ...原创 2020-02-15 09:00:55 · 193 阅读 · 0 评论 -
async/await
async/await是在Promise之后产生的,它和Promise诞生的目的都是为了解决“回调地狱”,虽然Promise可以解决回调地狱的问题,但是链式调用太多,就会变成另一种回调地狱1、asyncasync关键字用在一个函数的前面,用于表示函数是一个异步函数async function Fun() { return "hello" } Fun().t...原创 2020-02-09 08:17:15 · 116 阅读 · 0 评论 -
ES6 Promise
什么是PromisePromise 是异步编程的一种解决方案,是对异步的执行结果的描述对象。Promise最大的好处是在异步执行的流程中,把执行代码和处理结果的代码清晰地分离了。解决回调地狱问题。Promise还可以做更多的事情,比如,有若干个异步任务,需要先做任务1,如果成功后再做任务2,任何任务失败则不再继续并执行错误处理函数。promise有三种状态:pending(初始状态...原创 2020-02-04 08:45:25 · 80 阅读 · 0 评论 -
使用原生Javascript封装的Ajax请求node后台
封装函数function myAjax(obj){ //创建兼容 XMLHttpRequest 对象 let method=obj.method //请求方式如:get、post let url=obj.url //请求地址 let data=obj.data //携带数据 let callback=obj.callback //回调 ...原创 2020-01-29 10:22:27 · 267 阅读 · 0 评论 -
数据结构---栈Javascript描述
栈是一种”先入后出“的数据结构栈类的基本操作有入栈、出栈、检查栈顶元素、是否为空、清空栈、栈元素的个数栈类方法的实现 //栈类方法的实现 function Stack(arr) { this.arr = arr } //push 向栈顶添加元素(模拟入栈) Stack.prototype.push = function (e...原创 2019-12-27 12:59:02 · 128 阅读 · 0 评论 -
Javascript深克隆与浅克隆
浅克隆只是简单的复制对象,如果其中一个对象是引用类型,由于引用型变量保存的是一个地址,所以复制的只是一个内存地址,改变其中一个值另一个也会改变 let obj = {content:123} let obj2 = obj obj.content = 321 console.log(obj.content) console.log(obj2.conte...原创 2019-12-21 19:20:28 · 154 阅读 · 0 评论 -
javascript制作好看的可复用弹窗插件
效果图下面是详细代码index.html<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> ...原创 2019-12-20 18:36:06 · 369 阅读 · 0 评论 -
canvas画布实现飞机大战
效果下面是详细代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta h...原创 2019-12-19 19:53:07 · 353 阅读 · 0 评论