JavaScript
2024-05-28 20:30:07 82 举报
AI智能生成
Js基本知识点
作者其他创作
大纲/内容
body
div
input
img
标签
写入文字
write
方法
document(DOM对象)
geoloaction
navigator(浏览器软件)
screen(显示器屏幕)
history(浏览历史)
host:域名
location(地址栏)
addEventListener
子对象
alter(str) //浏览器基础弹窗
confirm、prompt、open、close
函数
name; //窗口名称
href
url的参数例如:?a=12&b=14
search
location
、navigator、acreen、frameset
属性
window(BOM浏览器窗口对象)
DOM文档对象
宿主对象
isNaN()、parseInt()和parseFloat()
Global不存在的内置对象
Math
内置对象
适用于 Web 编译的可移植的、体积与加载高效的格式。
作用:
WebAssembly字节码技术
可创建多个
受唯一的一个主线程控制
不可操作DOM
不可跨域加载js
特点
terminate关闭
message双向消息事件
close关闭
error错误事件
postMessage(data)
onMessage()
接口
Worker
线程
entry:输入
output:输出
loader:非js文件的自动任务处理
plugins:loader而外扩展的插件
exports
配置
spa和mpa、cli
webpack
下载命令行软件
下载第三方js库
上传js库和命令行软件
npm
cnpm
本地缓存能离线安装
默认固定依赖的版本
速度更快
内容校验
yarn
使用硬链接和符号链接,速度更快
pnpm
安装工具
打包
不宜进行“==”比较,因为无法确认精度
Number
用于对象
Null
用于变量,属性和方法
Undefined
toLowerCase():大写转小写
toUpperCase():小写转大写
String
false
true
Boolean
唯一且不可修改
不会自动转换为字符串,只能用String(sym) 或 sym.toString()
Symbol.iterator
Symbol.for(string)
Symbol()返回唯一
symbol符号
一B二S三NNU
基本类型(存放于栈)
Object
pop():取出并返回最后一个元素,会改变原数组
Array
Function
Error
Date
RegExp
Arguments
Map
六一
复杂类型(引用类型,存放于堆)
求最大值
max
Math(数学运算内置对象)
全局数据类型
一五七
数据类型
Number.toPersition(num):保留num位数字
Number.toFixed(num):四舍五入保留num位小数点
Math.round(num):保留num位小数点
random():生成随机数
max(number...)
min(number...)
ceil(number):向上取整
floor(number):向上取整
sqrt(number):求number的平方根
parseFloat(str):只转换第一个无效字符之前的字符串为数字,无效返回NAN
Number(obj),把对象转换成数字,无效返回NAN
数据转换
__proto__
prototype
原型
==
===
相等比较
函数对象:使用 New Function()出来的对象,如Object、Function
没有prototype属性
普通对象:除函数对象以外的
对象
函数对象用来指向自己
constructor:指向自己
函数对象和普通对象用来指向其函数对象的prototype
变量必须选声明
使用strict mode在代码顶部声明
严格模式
将声明式函数的声明提升到作用域顶部变量声明次之,初始化赋值不会提升
1.预解析
js解析
幂 (**)
右结合
+/-/~/!/delete/void/typeof
一元运算
幂 (**) > 单目运算符(+、-、*、/)
优先级
运算符
为对象添加属性,并重写读取机制
VUE的数据绑定实现方式
boolean hasOwnProperty(str):检查对象本身是否包涵某属性(不包括原型上的)
获取对象原型
getPrototypeOf
create
keys(obj):返回属性组成的数组
Object函数对象
每个函数都会有一个Arguments对象实例arguments,使用数组的形式引用着函数的传入的实参
Argument
regExpObj.test(regExpStr)
regExpObj.exec(regExpStr)
Array string.match(regExp):查找匹配个数
:将匹配regexp的部分替换成b
返回搜索到第一个匹配的
string.search(regExp/string)
Event
userAgent:浏览器标识
子主题
navigator
本地对象
传入参数组和
var声明会被前置
无var声明的运行到时才创建内存,并且放置在window对象内
通过加减计算每个对象正在使用的个数
计数法
标记有被使用的对象,定时清理未被使用的对象
标记清楚法
垃圾回收
编译
附属类型
Operators 操作符
create(() => { return () => {}})
throttleTime、filter、delay、debounceTime、take、takeUntil、distinct、distinctUntilChanged流程控制
subscribe
Observable可观察对象类
observable可观察序列,只出不进
Observer观察者类,只进不出
Schedulers调度器类,可出可进
存储最后一个消息
BehaviorSubject
指定消息个数、时间(秒)存储
ReplaySubject
触发完成后才发送
AsyncSubject
Subjects主体类
unsubscribe()取消进行中的执行
subscription订阅关系类正在执行中的观察者
RXJS
loash
工具
全双工通信,后台将能主动推送消息
webSocket
变量和函数在声明时会提升但初始化时不会
提升
prototype可看成对象构造器的隐式引用
prototype(原型)
在一个指定的this值和若干个指定的参数值的前提下调用某个函数.
向b中添加和覆盖a的属性,this为b
作用
不空的a才能调用call、apply;call打电话号码要一个一个按,apply申请则必须组成数组才可
apply、call
bind
==:不判断类型,并进行类型转换0为false
===:判断类型
switch:恒等计算符(===)进行比较
比较
可以读取函数内部的变量。
让这些变量的值始终保持在内存中。
分支主题
闭包
arguments
instanceof看一个变量是否是某个对象的实例。
typeof判断类型,只能判断object而无法识别具体是哪个对象
类型和对象判断
基础
永久存储
不能指定时间
无痕模式有safari兼容问题
locationStorage
在同一个会话中存储
sessionStorage
WebStorage(ie8及以上)
不可跨域
可上传服务端
cookie
indexDB
storage
隔离作用域
提高复用
便于协同开发
CommonJS
WebPack
AMD
CMD
模块化工具(处理包之间的依赖)
模块化(对代码进行拆分)
组件化(对UI进行拆分)
目录结构的制定编码规范前后端接口规范文档规范组件管理Git分支管理Commit描述规范定期CodeReview视觉图标规范
规范化(对设计和编程的约束)
提升效率
减少错误
自动化
四化
工程化
Json.parse(str)
str.parseJSON()
将字符串转换成Json
Json.stringify(obj)
obj.toJSONString()
将json转换成字符串
前或后必定有JSON,JSON对象的都是传参型,JSON在第二个位置
Json
先触发事件再执行标签功能
事件
delegate:未已有和未来新增的节点添加一个或多个事件监听
Jquery
使用中括号,其变量名是未知的,列入Map的key
动态属性
同一名称的类,编译时属性和函数会自动合并
声明合并
Function是提供完整公共的对象,function是创建对象构造函数或函数的语法关键字
Function和function
类
TypeScript
记得右上角点赞加收藏
JavaScript
0 条评论
回复 删除
下一页