javascript基础知识总结(概念篇)

1.javascript 的 数据类型

基本数据类型:

String、Number、Boolean、Undefined、Null

引用数据类型:

function、object、array

2.数组方法

push:尾部添加
unshift:头部添加
pop:尾部删除
shift:头部删除

3.DOM 和 BOM

javascript由ECMAScript,DOM,BOM三部分组成

  • ECMAScript也是一种语言,也就是对规定的语法,操作,关键字,语句等的一个描述,javascript实现了ECMAScript

  • DOM是文档对象模型,包括了获取元素,修改样式,操作元素三方面内容,也是我们进行最多的操作,有很多兼容性写法

  • BOM是浏览器对象模型,包括浏览器的一些操作,window.onload,window.open等还有浏览器事件,监听窗口的改变onresize,监听滚动事件onscroll等

4.null和undefind的区别

null是表示一个空的对象,转为数值为0,undefind表示一个空的原始值,转为数值为NAN

undefind指本该有一个值,但却并有定义,null表示没有对象,不应该有值

5.split()和 join() 的区别

split():切割成数组形式
join():将数组转换成字符串

6.javascript 的 typeof 返回哪些数据类型

String   Number  Boolean   Undefined   Null   Object

7.如何理解闭包

定义:
当一个函数的返回值是另一个函数,并且这个函数调用了其父函数内部的其他变量并在外部执行,就产生了闭包。

表现形式:
使函数外部能够调用函数内部的变量。

使用闭包的注意点:
(1)滥用闭包会造成内存泄漏:由于闭包会使得函数中的变量都保存在内存中,内存消耗很大,不能滥用,否则会造成网页性能问题。解决方法是在退出函数之前,将不使用的局部变量全部删除。
(2)会改变父函数内部变量的值。

8.GET和POST的区别

  • 参数传递方式不同:get请求会将参数跟在URL后进行传递,因为参数直接暴露,所以不能用来传递敏感信息,post请求将参数放在http消息的实体内容(request
    body)中发送给服务器,这种传递方式对用户不可见
  • 数据传递大小不同:get方式传递的数据不能超过2KB,而post要大的多
  • get请求只能进行URL编码,post请求支持多种编码方式
  • 安全问题:GET方式请求的数据会被浏览器缓存起来,别完整保留在浏览历史记录中,因此有安全问题

9.事件委托

利用事件冒泡的原理,让自己本身要触发的事件,让他的父元素代替执行

10.阻止事件冒泡和默认事件

阻止事件冒泡:

e. stopPropagation();//标准浏览器
event.canceBubble=true;//ie9 之前

阻止默认事件:

return false
e.preventDefault();

11.如何在 HTML 中添加事件

1、标签之中直接添加 onclick="fun()";
2、JS 添加 Eobj.onclick = method;
3、现代事件 IE9 以前: obj.attachEvent('onclick', method);
标准浏览器: obj.addEventListener('click', method, false);

12.link 和 import 的区别

  • link 是 XHTML 标签,除了加载 CSS 外,还可以定义 RSS 等其他事务;@import属于 CSS 范畴,只能加载
    CSS。
  • link 引用 CSS 时,在页面载入时同时加载;@import 需要页面网页完全载入以后加载。
  • link 是 XHTML 标签,无兼容问题;@import 是在 CSS2.1 提出的,低版本的浏览器不支持。
  • link 支持使用 Javascript 控制 DOM 去改变样式;而@import 不支持

13.常见的HTTP状态码

1**:信息,服务器接收到请求,需要请求者再次执行操作。
2**:成功,服务器接收到请求并作出处理
3**:重定向,需要进一步操作才能完成请求
4**:客户端错误,请求包含语法错误或无法完成请求
5**:服务端错误,服务器在处理请求时发生了错误

14.js 数组类型中的常用方法

在这里插入图片描述

15.创建AJAX的过程

  1. 创建XMLHttpRequest对象,也就是创建一个异步调用对象.
  2. 创建一个新的HTTP请求,并指定该HTTP请求的方法、URL及验证信息.
  3. 设置响应HTTP请求状态变化的函数.
  4. 发送HTTP请求.
  5. 获取异步调用返回的数据.
  6. 使用JavaScript和DOM实现局部刷新.

16.什么是事件冒泡?什么是事件捕获?

  • 冒泡型事件:

事件按照从最特定的事件目标到最不特定的事件目标(document对象)的顺序触发。

  • 捕获型事件:

事件从最不精确的对象(document 对象)开始触发,然后到最精确。

17.this对象的理解

  this总是指向函数的直接调用者(而非间接调用者)
  如果有new关键字,this指向new出来的那个对象
  在事件中,this指向触发这个事件的对象,
  特殊的是,IE中的attachEvent中的this总是指向全局对象Window。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值