JS18考前复习

复习:
变量:可变的量
变量命名:
变量类型: 5种 数字 字符串 布尔 NULL undefined
类型转换: 一般是基本类型转换 数字跟布尔直接转换
类型强转:Number()
通过number转为0的有 :false null ‘’ 空格 ‘0’
转为布尔5个false : undefined NaN null ‘’ 0
运算符:
关系运算符结果是布尔值
赋值运算+=
自增自减 独立成行的话 不参与运算的话,没有任何区别;当时参与运算的时候是有区别的
隐式类型转换:大部分都是转为数字 除了有+参与的字符串外
字符串比较大小:按位比较 不转数字

转数字有2个特殊的结果:
null转数字为0
undefined转数字是NaN
null!=0
console.log(undefined==null);//true

数字的转换:
Number()可以把非数字的转数字
parseInt 截取第一个非数字字符串前的内容转为数字
parseFloat 保留一个小数点
toFixed()保留指定位小数

Math对象里面的一些方法

第二天:
顺序 条件 循环
continue是跳过当前循环 执行下一次; break跳出循环

第三天:
函数声明的几种方式
1、命名函数
function fn(x,y){
consolle.log(x+y)
}

2、匿名函数(函数表达式)
var fn = function(x,y){
consolle.log(x+y)
}

3、构造函数 var fn = new Function(‘x’,‘y’,‘console.log(x+y)’) 可以让我们执行字符串类型的代码

函数调用:
函数本身后面接个小括号 函数本身()
匿名函数自运行 (function(){console.log(6666)})

arguments:函数没有形参 但是函数调用的时候传入实参,可以用arguments获取实参的集合
函数内部可以拿到函数调用的实参集合,伪数组
注意:但是箭头函数里面没有arguments

函数的作用域
函数提升
递归函数【重要但是不常用】一个函数调用自身
回调函数 异步的时候用的多

怎么写函数?
1、先有的代码写好 2、变量变参数
函数三步走:有没有【参数】?有没有变量----有没有【返回值】,需不需要参与其他元素----【函数体】里面写什么
自悟

数组:
数组方法 push pop unshift shift splice concat join(数组变字符串)
数组扩展方法 foreach(回调函数) map reduce filter
数组遍历 for for of(下标) for in(值 遍历对象) foreach
引用类型和值类型
引用类型:存的是地址 【传递的是地址】 所以存在引用类型透传问题 赋值的是地址 指向同一个地方
值类型:赋值的是数据

数组需要注意:【改不改变看引用】是否改变原数组 是否有返回值

字符串方法indexOf substring trim

内置对象
Math对象
date对象
设置时间对象 获取时间
时间戳 Date.parse() getTime()
不能设置星期 星期只有获取的

日历案例:

下节课复习BOM DOM 事件
BOM window对象的属性和方法
navigator 记录浏览器信息 userAgent

history 记录浏览访问的历史信息
length历史记录长度
forward()

location 地址信息
href

document 文档对象

方法2个:
open()打开当前窗口
close()关闭当前窗口

事件3个 触发时机
onload
onscroll 页面发生滚动
onresize 可视窗口大小发生变化

DOM对象 增删改查 改最难(改样式 属性 内容)

增1:
先创建 再插入
var oDiv = document.createElement(‘div’) 创建
插入有几种方式
第一种:
document.body.appendChild(oDiv) 尾插

第二种方法插入 document.body.insertBefore() 只是插到什么之前

增2:oDiv.innerHTML=<div></div>

删:
自伤
oDiv.remove()
document.body.removeChild(oDiv);

删2 document.body.innerHTML=’’;

查:注重元素
获取元素ID Name TagName ClassName
querySelector querySelectorAll

querySelectorAll拿的是静态值 删干净了还是会有 值类型
ClassName 引用类型
等下打印出来自己看

节点:就是更多的方法来查
父节点: parentNode 一个节点一旦是个父节点 那么一定是个父元素 这个特殊
previousElementSibling 上一个元素
previousSibling 上一个节点
firstChild
lastChild

改: 节点类型 1、2、3
改内容
1.表单元素 .value

.innerText .innerHTML
2.非表单元素

样式
ele.style.property=value;
ele.style[property] = value

ele.style[property] // 行内样式

function getStyle(ele, property) {
if(getComputedStyle) {
return getComputedStyle(ele)[property]
} else {
return ele.currentStyle[property]
}
}

属性
1、固有属性 ele.attribute
class是个关键字 在点的时候要改为className

常见:
ele.href=‘xxx’
ele.className 特殊 也是class属性 写className 因为class是个关键字
ele.classList.add() remove() replace()

2、自定义属性
ele.setAttribute(attribute,value)
ele.getAttribute(attribute) (‘attribute’)属性是字符串注意
ele.removeAttribute(attribute)

猜你喜欢

转载自blog.csdn.net/weixin_48651630/article/details/107386002
今日推荐