重要知识点:每节博客都会重复🙉🙉🙉
口诀🤨:四基两空一对象,还有五个falsy值。
七种数据类型
- number string bool symbol
- null undefined
- object
五个 falsy 值
- null undefined
- 0 NaN
- '' (空字符串)
DOM 事件委托
今天初次学习了AJAX,也巧了200多行代码,这里总结一下,今天学习到的AJAX 知识, AJAX 全名为XXX,说白了就是发送请求和相应的一个东西,发明这个东西的人一开始没想把它定位一种技术,马后炮的给他起了个名字,就叫做AJAX. 待会在说语法,一开始,先使用了一大串代码,实现模拟的server.js,然后安装了node-dev,运行了node-dev server.js 8888,然后按照之前学习的server.js的知识的方法,给他添加各站各样的path 判断,
以往我们在html 里调用CSS,js ,或者通过link 和 script 的方式实现调用,为了练习AJAX,我们不采用这种方法,今天请用AJAX的方法加载
四大步骤
创建HTTPRequest对象,全称是(XMLHttpRequest) 创建对象的open方法 监听对象的onload&onerror事件 专业前端会改用onreadystatechange 事件 在事件处理函数里操作CSS 文件内容 最后调用对象的send()发送请求 啥不会,直接MDN或者CRM 偶看? 这里把两种方法列出来 A:
getJS.onclick=()=>{
const request = new XMLHttpRequest()
request.open('GET','/2.js')
request.onload=()=>{
const script = document.createElement('script')
script.innerHTML = request.response
document.body.appendChild(script)
}
request.onerror=()=>{}
request.send()
}
B:
getXML.onclick=()=>{
const request =new XMLHttpRequest()
request.open('GET','/4.xml')
console.log(request.response)
request.onreadystatechange=()=>{
if(request.readyState===4){
if(request.status>=200&&request.status<300){
console.log(request.responseXML)
const dom= request.responseXML
const text=dom.getElementsByTagName('warning')[0].textContent
console.log(text.trim())
}else{
alert('错了')
}
}
}
request.send()
}
先使用第一种,理解思路,然后再用第二种方法 css he js 的获取差不多,直接建对应的标签,然后插入到对应的位置去 html 的话,就直接放在div 里面 重点是xml和json xml 是这样的,我们想获取xml文件中的helloworld,需要配合dom去实现,而且,response自己就有responseXML这个属性,然后直接
<?xml version="1.0" encoding="UTF-8"?>
<message>
<warning>
Hello World
</warning>
</message>
const dom= request.responseXML
const text= dom.getElementsByTagName('waring')[0].textContent
console.log(text.trim())
getElementsByTagName() 方法可返回带有指定标签名的对象的集合。 那剩下的JSON呢,在请求之前,先去学习了JSON这门的简单的语法,老师的带我们学习的时候,就直接看到官网的铁路图,和JS不一样,这门语言的类型只有6种,没有函数,
{"name":"frank",
"age":"18"
}
这个JSON有啥用呢,就请求一下每个人都不一样的东西,尤其是存在数据库里面的东西,比如个人的一下头像啊,各种之类的额,又或许想跳转下一页,这些都行JSON请求的,但是在请求之前,需要转化成JS可识别的格式,这里就用到了JSON.parse和JSON.XXX, 转换一下,废话不多说,直接说怎么搞
const object = JSON.parse(request.response)
myName.innerHtml=object.name
最后,又拓展了一波,实现,分页的请求!!!,楼主也没怎么理解,但是讲一讲大致的思路,数据库里面有好多的page.json,不过分别有各种不同的id,然后在调用的时候,这些东西在json里面的时候,是按照json的语法排列的,所有需要先转化,然后,在渲染,有点像存在哈希表中,然后在执行渲染函数,
这里老师的意思是说,实现这种分页就可以了,先理解思想为主:
由于本人水平有限,如有描述不准确的地方请给我留言,欢迎交流~