全局函数
1.eval:将传入字符串当函数执行。【很危险,使用增加被恶意攻击风险】
2.uneval:把传入参数源代码转字符串返回
3.isFinite:判断传入数字是不是有限数
4.parseFloat:把传入参数解析会浮点数
5.decodeURI:解码统一资源标识符(URI)
6.decodeURIComponent:解码包括特殊符号的统一资源标识符
7.encodeURI, encodeURIComponent:使用统一资源标识符加密,后者比前者能加密更多特殊符号,比如&
object静态函数——1
1.object.assign(main, source) 将参数对象source的可枚举属性分配到参数对象main中,返回新的对象1
2.Object.create(obj) 基于一个对象构建一个新对象并返回
3.Object.defineProperty() 定义对象属性
4.Object.defineProperties() 定义对象多个属性
5.Object.entries() 返回对象的键值对数组
使用实例:
for (const [key, value] of Object.entries(object1)) {
console.log(key,value);
}
object静态函数——2
1.Object.freeze()
冻结对象,其他代码不能删除或更改任何属性
【不经常使用,可以使用于不可编辑性要求很高的对象】
2.Object.getOwnPropertyDescriptor()
拿到对象某个属性的描述符
【不经常使用,可以作为对某个重要对象的分析工具】
3.Object.getOwnPropertyNames()
返回对象可枚举和不可枚举的属性名构造的数组 【可能用到】
4.Object.getOwnPropertySymbols()
返回对象的Symbol数组【不经常使用】
5.Object.getPrototypeOf()
返回对象的原型【不经常使用】
6.Object.is (a, b)
判断对象a、b是否为同一个对象 【可能会用到】
7.Object.seal()
封闭对象,不能增减属性,且固定属性标记,但是可以改变属性值
【不经常使用】
8.Object.preventExtensions()
限制对象新增属性
【不经常使用】 freeze>seal>preventExtensions 限制性由大到小
9.Object.isExtensible()、Object.isFrozen()、Object.isSealed()
判断对象是否可拓展、是否已冻结、是否已封闭
【不经常使用】
10.Object.keys()、Object.values()
返回对象可枚举的(属性名|值)构造的数组
【偶尔用到】
11.Object.setPrototypeOf()
设置对象的原型对象【不经常使用】
小记
1.Function是一个构造函数 可以定义function对象
2.Boolean 布尔值的对象包装器
Boolean()可以作为bool值强制转换器
值为true对Boolean对象和true不是同一概念
3.Symbol是一种基本数据类型
Symbol()可以返回Symbol类型的值,具有静态属性和唯一性
Error对象,有六种类型
1. EvalError 表示错误原因与Eval有关
2. InternalError 表示Js内部引擎异常
3. RangeError 表示数值或变量超出其有效范围
4. ReferenceError 表示无效引用错误
5. SyntaxError 表示Eval解析过程有语法错误
6. TypeError 表示值或变量不是有效类型
7. URIError 表示给encodeURI()和decodeURI()传递的参数无效
Number对象 函数方法
Number.isInteger() 判断是否整数
Number.toInteger() 计算值并转换为整数
Number.isNaN() 判断是否为数字
Number.parseFloat() 解析为浮点数
Number.parseInt() 解析为整数
内置对象
BigInt 内置对象,表示大于2 53 - 1的整数。【基本用不到】
Math 内置对象,拥有一些常数属性和数学函数方法,不是函数对象
常数属性:比如圆周率:Math.PI 类似的还有欧拉常数、自然对数等
常用方法:
Math.round()返回四舍五入后到整数
Math.random()返回一个0到1点随机伪数
不常用方法:
Math.abs(x) 返回一个数的绝对值
Math.ceil(x) 返回大于一个数的最小整数
Math.fround(x) 返回最接近的单精度浮点数
求正弦值、余弦值等 更多算法函数请查询网站
Date 日期对象
常用类方法:
Date.Parse() 解析时间字符串返回时间戳
Date.Now() 返回当前时间到时间戳
常用的实例函数方法
getFullYear/getMonth/getDate 获取年份/月份下标/日期
getHours/getMinutes/getSeconds 获取时间的小时/分钟/秒
setFullYear/setMonth 配置关键字时间
getDay() 返回日期在一周中是第几天的值
getTime()/valueOd() 返回时间的格林威治时间值(时间戳)
不常用的简单记录部分拓展
getMilliseconds() 返回日期的毫秒数
String 字符串对象
常用实例函数
slice/subString() 返回截取字符串。区别:前者参数可以为负数,后者不然
trim() 可以删除字符串两端的空白字符
replace(a, b) 字符串替换
split(a) 以某个参数为切割字符,返回切割后的字符串数组
RegExp 正则表达式对象
语法:var myreg=/[1][3,4,5,7,8][0-9]{9}$/;
常用实例函数:
tests() 判断是否符合正则
exec() 搜索,返回匹配的数组
Array 数组对象
常用实例函数:
concat() 合并两个数组
filter() 返回符合筛选条件的元素数组
unshift() 将参数添加至数组顶部
shift() 删除顶部元素
pop() 删除尾部元素
push() 添加元素到末尾
join(a) 使用参数将数组拼接成一个字符串并返回
sort() 使用算法对数组排序
Set 对象 (具有唯一性、无序性、高查找性的对象数组)
允许存储任何类型的唯一值,每个值都是唯一的,存储是无序的
Promise对象 表示一个异步操作最终成功/失败后的结果值