day13

回顾

作用域

  • 局部作用域和全局作用域

  • 局部作用域,函数内

  • 块状作用域,结构语句的{}内 ES6 使用 let 声明

  • 作用域链

  • 变量提升

  • 函数提升

对象

  • 构造函数和对象

  • 实例化对象 new 构造函数()

  • this 表示本对象

  • 调用属性和方法

    对象.属性名
    对象['属性名']

原型

  • 所有的对象都有原型 (原型仍然是一个对象)

  • 原型还有原型 构成原型链

  • 对象可以继承原型上的属性和方法

内置函数 Object

  • new Object

  • {prop:vlaue, prop:value: prop:function(){}, prop:value}

使用技巧

获取元素

document.querySelector()  一个元素
document.querySelectorAll() 由多个元素组成的 像数组(LikeArray) 对象

设置样式

eleObj.style.属性名 = 值

设置类名

eleObj.className = '';  <div class="item current">
eleObj.classList.add()
eleObj.classList.remove()
eleObj.classList.toggle()

事件

绑定事件  <button onclick=""> 不推荐
eleObj.onclick = function(e){
  console.log(e)
}

事件对象 event

event.button  鼠标按键的值
event.clientX 鼠标坐标 (相对于整个页面)
event.clientY 鼠标坐标

定时

setInterval()
clearInterval()
setTimeout()
clearTimeout()

day13

内置对象

系统内置的构造函数(类)

1 Number

属性

  • Nnumber.MAX_VALUE

  • Number.MIN_VALUE

方法

  • toFixed([number]) 取整或者保留指定位数的小数 (四舍五入)

  • toString([number]) 转为字符串形式,可以指定进制

2 String

属性

  • length 字符串长度

方法

indexOf()  返回第一次出现的位置  不存在 返回-1
lastIndexOf() 返回最后一次出现的位置 不存在 返回-1
substr(start, lenth) 截取 开始和截取长度
substring(start, end) 截取 开始和结束位置
slice(start,end)     同上
split() 把字符串分割成 数组
trim()   去掉两边的空格
toUpperCase() 转大写
toLowerCase() 转小写
replace(旧, 新) 替换 只能替换一次

3 Boolean

4 Array

4.1 创建数组v

var list = [item1, item2, item3 ...]
var list = new Array()

3.2 数组操作

#添加元素
list.push() 最后面
list.unshift() 最前面
list.splice(位置,0,新值) 指定位置 向后添加个数不定

#删除元素
list.pop() 删除最后 返回删除的元素
list.shift() 删除第一个 返回删除的元素
list.slice(位置,删除的个数)   指定位置删除指定个数 向后删除

#设置修改
list[index] = value
list.splice(位置,删除个数,值1,值2...) 向后修改

3.3 属性和方法

属性
length 数组的长度


方法
push() 添加到最后面
unshift() 添加到最前面
pop() 删除最后 返回删除的元素
shift() 删除第一个 返回删除的元素
slice() 添加,删除,修改 指定位置的元素
sort() 和函数连用 按照自然数排序
reverse() 按照字符串的比较方式排序
------------------------
join() 指定分隔符 返回拼接的字符串 原数组不改变
concat() 数组连接 不改变原数组
slice() 截取 参考上面字符串的slice()
indexOf() 返回正数第一个的索引 没有则返回-1
lastIndexOf() 返回倒数第一个的索引 没有则返回-1
map() 映射 结合函数处理 返回一个新的数组
filter() 过滤 结合函数的返回值 过滤出一个新的数组
some() 有一个元素满足条件即可 返回布尔值
every() 每个元素 返回布尔值 根据参数函数判断
reduce() 元素阶乘
forEach(function(value, index){}) 遍历建议用这个

3.4 数组的遍历(迭代)

#for 循环和
for (var i = 0; i < arr.length; i ++) {
  arr[i]
}

#for .. in
for (var i in arr) {
  arr[i]
}

#推荐 数组方法 forEach
arr.forEach(function(val, index){
   
})

5 类数组对象

  • 类型不是Array,特性非常像Arrat

  • 具有length属性

  • 常见类数组对象: arguments, 元素的列表(NodeList)

6 Function

# 属性
length   形参的个数

# 方法
call(对象,参数,参数2...) 在调用函数(方法)的同时,改变函数内this的指向
apply(对象, 数组)         在调用函数(方法)的同时,改变函数内this的指向

7 Math 数学

属性
Math.PI

方法
Math.abs() 绝对值
Math.pow() 求几次方
Math.max() 最大值
Math.min() 最小值
Math.ceil()   进位取整
Math.floor() 舍位取整
Math.round() 四舍五入
Math.random() 随机数 0~1 0有可能,1不可能
取随机数
0~9
Math.floor(Math.random() * 10)

6~13
Math.floor(Math.random() * 8) + 6

8 Date

getFullYear()  公元纪年
getMonth()     月份 0~11 需要+1
getDate()     日期
getDay()       星期几
getHours()     时
getMinutes()   分
getSeconds()   秒
getMilliseconds() 毫秒
getUTC... 标准时区的时间
set...
setUTC...

9 RegExp

正则

RegExp对象
test() 返回布尔值
exec() 返回数组,第一个匹配到的内容,位置。 全局匹配,所有匹配到的内容

String对象的方法
search() 第一次匹配到的位置,匹配不到 -1
match() 同r.exec()
replace() 替换,默认只替换一个,正则全局匹配
原文地址:https://www.cnblogs.com/xujinjin18/p/9471662.html