JS
2021-10-12 17:53:42 15 举报
AI智能生成
JS
作者其他创作
大纲/内容
快速入门
数据类型
Number
NaN
字符串
单引号
双引号
比较运算符
==
===
null
undefined
变量
var
strict模式
全局变量
use strict';
字符串
转义字符\
ASCII字符 \x##
Unicode字符 \u####
多行字符串
反引号 ` ... `
模板字符串
+
var name = '小明';
var age = 20;
var message = `你好, ${name}, 你今年${age}岁了!`;
alert(message);
var age = 20;
var message = `你好, ${name}, 你今年${age}岁了!`;
alert(message);
数组
方式
[1, 2, 3.14, 'Hello', null, true]
new Array(1, 2, 3);
函数
indexOf
slice
push
pop
unshift
shift
sort
reverse
splice
concat
join
注意
Array的length赋一个新的值会导致Array大小的变化
如果通过索引赋值时,索引超过了范围,同样会引起Array大小的变化
对象
注意
对象的键都是字符串类型
值可以是任意数据类型
如果属性名包含特殊字符,就必须用''括起来
动态添加/删除属性
in操作符
hasOwnProperty
标准对象
Date
全局对象
window
Map/Set
Map
set
has
get
delete
Set
iterable
for ... of
forEach
浏览器
浏览器对象
window
属性
innerWidth
innerHeight
outerWidth
outerHeight
pageXOffset
pageYOffset
方法
addEventListener
第一个参数是事件的类型
第二个参数是事件触发后调用的函数。
第三个参数是个布尔值用于描述事件是冒泡还是捕获。该参数是可选的
冒泡
捕获
removeEventListener
navigator
属性
appName
appVersion
language
platform
userAgent
screen
属性
width
height
colorDepth
location
属性
protocol
host
port
pathname
search
hash
方法
assign
reload
document
属性
title
cookie
方法
getElementById
getElementsByTagName
history
方法
back
forward
操作DOM
更新DOM
属性
innerHTML
注意
如果写入的字符串是通过网络拿到了,要注意对字符编码来避免XSS攻击
innerText
textContent
style
插入DOM
方法
appendChild
insertBefore
删除DOM
方法
removeChild
Promise
好处
异步执行的流程中,把执行代码和处理结果的代码清晰地分离了
串行执行
job1.then(job2).then(job3).catch(handleError);
并行执行异步
Promise.all()
异步任务容错
Promise.race()
函数
rest参数
关键字
arguments
变量作用域与解构赋值
变量提升
全局作用域
块级作用域
let
const
定义常量
名字空间
解构赋值
忽略某些元素
对象解构赋值
使用默认值
方法
this指向错误问题
var that = this
apply
一个参数就是需要绑定的this变量
二个参数是Array
call
一个参数就是需要绑定的this变量
把参数按顺序传入
装饰器
高阶函数
map/reduce
map
reduce
filter
回调函数
Array的某个元素
元素的位置
数组本身
sort
箭头函数
this
闭包
返回函数不要引用任何循环变量,或者后续会发生变化的变量。
generator
next
for ... of
标准对象
Date
函数
getFullYear
getMonth
月份范围用整数表示是0~1
getDate
getDay
getHours
getMinutes
getSeconds
getMilliseconds
getTime
时区
toUTCString
toLocaleString
RegExp
\d
匹配一个数字
\w
匹配一个字母或数字
.
匹配任意字符
*
意个字符
+
至少一个字符
?
0个或1个字符
{n}
n个字符
{n,m}
n-m个字符
JSON
数据类型
number
boolean
string
null
array
object
序列化
JSON.stringify
格式化
JSON.stringify(xiaoming, null, ' ');
第二个参数用于控制如何筛选对象的键值
传入一个函数,这样对象的每个键值对都会被函数先处理:
toJSON()
反序列化
JSON.parse()
面向对象编程
__proto__
Object.create()
创建对象
{ ... }
构造函数
constructor属性
prototype属性
忘记写new怎么办
原型继承
class继承
extends
0 条评论
下一页