From 0a84ff8c1a33bdaff0a29aa2ca91b55a09ba1188 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9C=E6=B1=9F=E5=98=89=E5=85=B4=E2=80=9D?= <“1994738974@qq.com”> Date: Sat, 3 Dec 2022 20:50:28 +0800 Subject: [PATCH] 0 --- ...07\346\273\244\346\226\271\346\263\225.md" | 52 +++++++++++++++ .../11.29\345\216\237\347\224\237ajax.md" | 46 +++++++++++++ .../11.30jQuery ajax.md" | 65 +++++++++++++++++++ .../\347\254\224\350\256\260/12.01promise.md" | 42 ++++++++++++ 4 files changed, 205 insertions(+) create mode 100644 "48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.28\350\277\207\346\273\244\346\226\271\346\263\225.md" create mode 100644 "48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.29\345\216\237\347\224\237ajax.md" create mode 100644 "48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.30jQuery ajax.md" create mode 100644 "48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/12.01promise.md" diff --git "a/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.28\350\277\207\346\273\244\346\226\271\346\263\225.md" "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.28\350\277\207\346\273\244\346\226\271\346\263\225.md" new file mode 100644 index 0000000..85321c5 --- /dev/null +++ "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.28\350\277\207\346\273\244\346\226\271\346\263\225.md" @@ -0,0 +1,52 @@ +过滤方法 + +1..not + +当 not() 方法参的数是一个选择器时,表示使用选择器来过滤不符合条件的元素,然后选取其余元素。当 not() 方法的参数是一个函数时,表示使用函数来过滤不符合条件的元素,然后选取其余元素。 + +``` +$(selector).not(选择器或方法) +``` + +2.类名过滤:hasClass(); + +hasClass() 方法一般用于判断元素是否包含指定的类名:如果包含,则返回 true;如果不包含,则返回 false。 + +``` +$().hasClass('类名') +``` + +3.下标过滤:eq() + +下标过滤,指的是根据元素集合的下标来过滤。在 jQuery 中,我们可以使用 eq() 方法来实现下标过滤。 + +``` +$().eq(n) +``` + +n 是一个整数。当 n 取值为 0 或正整数时,eq(0) 获取的是第 1 个元素,eq(1) 获取的是第 2 个元素,……,以此类推。当 n 取值为负整数时,eq(-1) 获取的是倒数第 1 个元素,eq(-2) 获取的是倒数第 2 个元素,……,以此类推。 + +4.判断过滤:is() + +判断过滤,指的是根据某些条件进行判断,然后选取符合条件的元素。在 jQuery 中,我们可以使用 is() 方法来实现判断过滤。 + +``` +$().is(selector) +``` + +5.**表达式过滤:filter()、has()** + +表达式过滤,指的是采用“自定义表达式”的方式来选取符合条件的元素。这种自定义表达式可以是选择器,也可以是函数。 + +has() 只能赛选选择器 + +``` +$().has(selector) +``` + +filter() + +``` +$().fliter(selector) +``` + diff --git "a/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.29\345\216\237\347\224\237ajax.md" "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.29\345\216\237\347\224\237ajax.md" new file mode 100644 index 0000000..be4be85 --- /dev/null +++ "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.29\345\216\237\347\224\237ajax.md" @@ -0,0 +1,46 @@ +原生ajax + +转换 + +``` +JSON.stringify(obj):将对象转成json数据格式 +JSON.parse(json):将json转成对象 +``` + +步骤 + +1.创建请求 + +``` +var oAjax = new XMLHttpRequest(); +``` + +2.设置请求 + +``` +oAjax.open('GET', url, true); +``` + +3.发送请求 + +``` +oAjax.send() +``` + +4.判断是否成功 + +``` +oAjax.onreadystatechange = function () {} +``` + +状态码可以分为5类: + +​ 1、信息响应:100~199 + +​ 2、成功响应:200~299 + +​ 3、重定向:300~399 + +​ 4、客户端错误:400~499 + +​ 5、服务端错误:500~599 \ No newline at end of file diff --git "a/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.30jQuery ajax.md" "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.30jQuery ajax.md" new file mode 100644 index 0000000..1b69979 --- /dev/null +++ "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/11.30jQuery ajax.md" @@ -0,0 +1,65 @@ +jQuery ajax + +ajax() 方法用于执行 AJAX(异步 HTTP)请求。 + +所有的 jQuery AJAX 方法都使用 ajax() 方法。该方法通常用于其他方法不能完成的请求。 + +语法 + +``` +$.ajax({name:value, name:value, ... }) +``` + +属性 + +| 名称 | 值/描述 | +| :--------------------------- | :----------------------------------------------------------- | +| async | 布尔值,表示请求是否异步处理。默认是 true。 | +| beforeSend(*xhr*) | 发送请求前运行的函数。 | +| cache | 布尔值,表示浏览器是否缓存被请求页面。默认是 true。 | +| complete(*xhr,status*) | 请求完成时运行的函数(在请求成功或失败之后均调用,即在 success 和 error 函数之后)。 | +| contentType | 发送数据到服务器时所使用的内容类型。默认是:"application/x-www-form-urlencoded"。 | +| context | 为所有 AJAX 相关的回调函数规定 "this" 值。 | +| data | 规定要发送到服务器的数据。 | +| dataFilter(*data*,*type*) | 用于处理 XMLHttpRequest 原始响应数据的函数。 | +| dataType | 预期的服务器响应的数据类型。 | +| error(*xhr,status,error*) | 如果请求失败要运行的函数。 | +| global | 布尔值,规定是否为请求触发全局 AJAX 事件处理程序。默认是 true。 | +| ifModified | 布尔值,规定是否仅在最后一次请求以来响应发生改变时才请求成功。默认是 false。 | +| jsonp | 在一个 jsonp 中重写回调函数的字符串。 | +| jsonpCallback | 在一个 jsonp 中规定回调函数的名称。 | +| password | 规定在 HTTP 访问认证请求中使用的密码。 | +| processData | 布尔值,规定通过请求发送的数据是否转换为查询字符串。默认是 true。 | +| scriptCharset | 规定请求的字符集。 | +| success(*result,status,xhr*) | 当请求成功时运行的函数。 | +| timeout | 设置本地的请求超时时间(以毫秒计)。 | +| traditional | 布尔值,规定是否使用参数序列化的传统样式。 | +| type | 规定请求的类型(GET 或 POST)。 | +| url | 规定发送请求的 URL。默认是当前页面。 | +| username | 规定在 HTTP 访问认证请求中使用的用户名。 | +| xhr | 用于创建 XMLHttpRequest 对象的函数。 | + +$.get()语法 + +``` + $.get('url',{传参},function (data) { },'类型'); +``` + +$.post()语法 + +``` + $.post('url',{传参},function (data) { },'类型'); +``` + +$.getJSON语法 + +``` + $.getJSON('url',{传参},function (data) { },'类型'); +``` + + $.getScript语法 + +``` + $.getScript('test.js') +``` + diff --git "a/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/12.01promise.md" "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/12.01promise.md" new file mode 100644 index 0000000..4b8839d --- /dev/null +++ "b/48\346\261\237\345\230\211\345\205\264/\347\254\224\350\256\260/12.01promise.md" @@ -0,0 +1,42 @@ +promise + +Promise 是[异步编程](https://so.csdn.net/so/search?q=异步编程&spm=1001.2101.3001.7020)的一种解决方案,其实是一个构造函数,自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法。所谓`Promise`,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。 + +1.特点 + +(1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是Promise这个名字的由来,它的英语意思就是“承诺”,表示其他手段无法改变。 + +(2)一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象的状态改变,只有两种可能:从pending变为fulfilled和从pending变为rejected。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果,这时就称为 resolved(已定型)。如果改变已经发生了,你再对Promise对象添加回调函数,也会立即得到这个结果。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。 +2.用法 + +``` +var a = new promise(function(resolve,reject){ + resolve(成功) + reject(失败) +}) +``` + +3.缺点 + +1.无法取消Promise,一旦新建它就会立即执行,无法中途取消。 + +2.如果不设置回调函数,Promise内部抛出的错误,不会反应到外部。 + +3.当处于pending状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将完成)。 + + + +4.方法 + +(1)then() + +then 方法可以接收两个回调函数作为参数,第一个回调函数是Promise对象的状态改变为 resoved 是调用,第二个回调函数是 Promise 对象的状态变为 rejected 时调用。其中第二个参数可以省略。 + +(2)该方法相当于 then 方法的第二个参数,指向 reject 的回调函数。 + +另一个作用是,在执行resolve回调函数时,如果出错,抛出异常,不会停止陨星,而是进入catch 方法中。 + +(3)finally 方法用于指定不管 Promise 对象最后状态如何,都会执行的操作。 + + + -- Gitee