JavaScript | 索引对照表

titledate
JavaScript 索引表
2019-08-24

JavaScript | 索引对照表

更多内容请访问 https://github.com/ceynri/Notes

摘录一些常用的方法(且不限于方法,如属性、常量),在全面与精简中尽量作平衡。

表格内每一项时常以内在意义进行排序而非字母顺序排序,请**善用目录与 Ctrl+F**?

目录

 

注:本文符号对应关系:

符号对应
斜体需要替换为对应内容的标记
[args]可选参数
 
 

数据类型

Number

详细解释:JavaScript Number 对象 | 菜鸟教程

舍入

方法描述(返回值)
num.toFixed([len])指定位小数位数的数字字符串
num.toPrecision([len])指定长度的数字字符串
num.toExponential([len])已被四舍五入并使用指数计数法的数字字符串
 

常量属性

属性描述
Number.MAX_VALUE返回 JavaScript 中可能的最大数
Number.MIN_VALUE返回 JavaScript 中可能的最小数
Number.NEGATIVE_INFINITY表示负的无穷大(溢出返回)
Number.NaN表示非数字值("Not a Number")
Number.POSITIVE_INFINITY表示无穷大(溢出返回)
 

其他函数

方法描述
num.isFinite()是否是有限数
num.isNaN()是否为 NaN
 

String

详细解释:JavaScript String 对象 | 菜鸟教程

查找子串

方法描述
str.indexOf(substr [, pos])顺序查找子串并返回位置
str.lastIndexOf(subStr [, pos])从末尾开始查找子串并返回位置
str.includes(substr [, pos])是否包含子串并返回boolean值
str.startsWith(str2)是否按某字符串开始
str.endsWith(str2)是否按某字符串结束
 

获取子串

方法描述
str.slice(start [, end])支持负值
str.substring(start [, end])不支持负值,支持start大于end
str.substr(start [, length])`指定字符串长度而非结束位置

推荐使用slice方法。

 

转义字符

字符描述
\n换行
\r回车:不单独使用
 Windows文本文件使用 \r\n 组合表示换行符
\', \"引号
\\反斜线
\t制表符
\xXX十六进制的 unicode XX
\uXXXXUTF-16 编码的十六进制 unicode 符号
\u{X…XXXXXX}(1到6个字符)UTF-32 编码的十六进制 unicode 符号
 

其他

方法描述
str.charAt(pos)获得字符串特定位置字符(也可以使用方括号直接获得)
str.toLowerCase()转换为小写
str.toUpperCase()转换为大写
str.localeCompare(str2)根据语言比较字符串而非字符代码大小
str.trim()删除字符串前后的空格
str.repeat(n)重复字符串 n 次
 

常用库

Math

舍入

方法描述
Math.floor()向下舍入
Math.ceil()向上舍入
Math.round()四舍五入
Math.trunc()只取整数部分(IE不支持)

这些函数都是取整,如需要保留n位小数,则使用:

  • toFixed(precision) 方法
  • 先乘10n,舍完再除10n
 

其他

方法描述
Math.random()获得随机数
Math.max(a, b, c...)返回参数中的最大值
Math.min(a, b, c...)返回参数中的最小值
 

对象

Objects

// TODO

 

Array

详细解释:JavaScript Array 对象 | 菜鸟教程

添加/删除元素

方法描述
push(...items)从结尾添加元素
pop()从结尾提取元素
shift()从开头提取元素
unshift(...items)从开头添加元素
splice(pos, deleteCount [, ...items])从 pos 开始删除 deleteCount 个元素并在当前位置插入元素
slice(start [, end])从 start 到 end(不包括end)的元素返回一个新的数组
concat(...items)返回当前数组所有成员并添加 items(如为数组则提取其中元素)的新数组

注意: splice 方法会修改数组本身。

 

查询元素

方法描述
indexOf(item [, pos])从 pos 开始找到 item 则返回索引,否则返回 -1
lastIndexOf(item [, pos])从 结尾找到 pos,如找到 item 则返回索引,否则返回 -1
includes(value)数组有 value 则返回 true,否则返回 false
find(func)通过函数过滤元素:返回符合 func 条件的第一个值
filter(func)通过函数过滤元素:返回符合 func 条件的全部值

findIndex 和 find 类似,但返回索引而不是值。

 

数组转换

方法描述
map(func)从每个元素调用 func 的结果创建一个新数组
sort(func)将数组按func条件判断并排序,然后返回。例:arr.sort((a, b) => a-b)
reverse()在原地颠倒数组,然后返回它
split(delim)将字符串按 delim 分隔符拆分为数组并返回
join(delim)将数组按 delim 分隔符黏合为字符串并返回

注意: sort 方法、reverse 方法会修改数组本身。

 

迭代元素

方法描述
forEach(func)为每个元素调用 func,不返回任何东西
 

其他

方法描述
Array.isArray(arr)检查 arr 是否是一个数组
Array.from(object [, mapFunction, thisValue])通过给定的对象中创建一个数组
 
方法描述
arr.some(func)对数组每个元素调用函数 func,若存在有结果为 true,则返回 true,否则返回 false
arr.every(func)对数组每个元素调用函数 func,若所有的结果为 true,则返回 true,否则返回 false
arr.fill(value [, start, end])用 value 重复填充数组
reduce(func(total, currVal [, currIdx, arr]) [, initVal])将数组元素计算为一个值(例如数组所有元素累加)
arr.copyWithin(target [, start, end])从数组的指定位置拷贝元素到数组的另一个指定位置中(覆盖现有)
 

Map

方法 / 属性描述
new Map()创建 map
map.set(key, value)根据键(key)存储值(value)。支持链式调用
map.get(key)根据键返回值。若该键不存在,返回 undefined
map.has(key)若键存在,返回 true,否则返回 false
map.delete(key)移除该键的值
map.clear()清空 map
map.size返回当前元素个数
 

Set

方法 / 属性描述
new Set(iterable)创建 set,可以利用可迭代对象(如数组)来创建
set.add(value)添加值,返回 set 自身
set.delete(value)删除值,若该 value 存在则返回 true ,否则返回 false
set.has(value)如果 set 中存在该值则返回 true ,否则返回 false
set.clear()清空 set
set.size返回当前元素个数
 

HTML DOM

节点导航

节点属性描述
parentNode父节点
childNodes[nodeNumber]第 nodeNumber 位子节点
firstChild首个子节点
lastChild最后一个子节点
nextSibling同一层级的后一个节点
previousSibling同一层级的前一个节点
 

查找 HTML 元素

方法描述
document.getElementById(id)通过 id 来查找 HTML 元素
document.getElementsByTagName(name)通过标签名来查找 HTML 元素
document.getElementsByClassName(name)通过类名来查找 HTML 元素
document.querySelectorAll(name-with-selector)通过 CSS 选择器查找 HTML 元素

注意getElement与getElements的区别

 

改变 HTML 元素

方法描述
element.innerHTML = new-html-content改变元素的 innerHTML
element.attribute = new-value改变元素的属性值
element.setAttribute(attribute, value)改变元素的属性值
element.style.property = new style改变元素的 CSS 样式
 

增删 HTML 元素

旧方法

方法描述
document.createElement(element)创建 HTML 元素
elem.removeChild(child)删除 HTML 元素
elem.appendChild(child)添加 HTML 元素
elem.insertBefore(element)插入 HTML 元素
elem.replaceChild(newchild, oldchild)替换 HTML 元素
document.write(text)写入 HTML 输出流
 

新方法

插入文本或节点

方法插入位置
node.before()node 前面
node.prepend()node 内部开头
node.append()node 内部末尾
node.after()node 后面
node.replaceWith()替换 node
 

插入 HTML

element.insertAdjacentHTML(position, html);

position 字符串值插入位置
beforebeginelem 开头位置前插入 html
afterbeginelem 开头位置后插入 html
beforeendelem 结束位置前插入 html
afterendelem 结束位置后插入 html
 

其他方法

方法描述
node.remove()移除 node
node.cloneNode(bool)克隆节点(深/浅)
 

对象、集合和属性

分为 HTML DOM Level 1 和 HTML DOM Level 3。

属性描述(返回值)DOM
document.documentElement<html> 元素3
document.head<head> 元素3
document.title<title> 元素1
document.body<body> 元素1
document.scripts所有 <script> 元素3
document.images所有 <img> 元素1
document.forms所有 <form> 元素1
document.embeds所有 <embed> 元素3
document.anchors拥有 name 属性的所有 <a> 元素。1
document.links拥有 href 属性的所有 <area><a> 元素1
document.cookie文档 cookie1
document.doctype文档 doctype3
document.documentMode浏览器使用的模式3
document.readyState文档加载状态3
document.inputEncoding文档编码(字符集)3
document.URL文档完整 URL1
document.documentURI文档 URI3
document.baseURI文档绝对基准 URI3
document.referrer引用的 URI(链接文档)1
document.domain文档服务器的域名1
document.lastModified文档更新的日期和时间3
document.implementationDOM 实现3
document.strictErrorChecking是否强制执行错误检查3
 

不常用:

属性描述DOM
document.applets返回所有 <applet> 元素(HTML5 不建议使用)1
document.domConfig废弃。返回 DOM 配置3
 

事件种类

事件名描述
onload / onunload进入/离开 页面时
onchange内容 被改变 时
onmouseover / onmouseout移入/移出 某个元素的上方时
onmousedown / onmouseup鼠标按钮 按下/抬起时
onclick鼠标按钮点击后(按下与抬起动作都在元素上方完成)
 

nodeType 节点类型

节点类型例子
ELEMENT_NODE1<h1>W3School</h1>
ATTRIBUTE_NODE2class = "heading" (HTML DOM 弃用,仅 XML DOM)
TEXT_NODE3W3School
COMMENT_NODE8<!-- 这是注释 -->
DOCUMENT_NODE9HTML 文档本身(<html> 的父节点)
DOCUMENT_TYPE_NODE10<!Doctype html>
 

Attribute 特性

方法 / 属性描述
elem.hasAttribute(name)检查是否存在这个特性
elem.getAttribute(name)获取这个特性
elem.setAttribute(name, value)把这个特性设置为 name
elem.removeAttribute(name)移除这个特性
elem.attributes所有特性的集合
 

BOM

元素尺寸

属性包括内容不包括内容读写性
clientWidth元素宽度、内边距边框和外边距只读
offsetWidth元素宽度、内边距、边框外边距只读
scrollWidth元素宽度、内边距、溢出尺寸边框和外边距可读写
style.width元素宽度内边距、边框和外边距可读写
 

页面滚动

方法描述
window.pageYOffset/pageXOffset页面当前滚动位置
window.scrollTo(pageX, pageY)绝对定位
window.scrollBy(x, y)相对当前位置滚动
elem.scrollIntoView([topBoolean])elem 与 与窗口顶部/底部对齐
 

Timing 事件

方法描述
setTimeout(function, milliseconds)在等待指定的毫秒数后执行函数。
clearTimeout(timeoutVariable)停止执行 setTimeout() 中规定的函数。
setInterval(function, milliseconds)持续重复在等待指定的毫秒数后执行该函数。
clearInterval(timeoutVariable)停止执行 clearInterval() 中规定的函数。

其中,timeoutVariablesetInterval() 的返回值。

 

window.location 对象

属性 / 方法描述
location.href返回当前页面的 URL
location.hostname返回 web 主机的域名
location.pathname返回当前页面的路径或文件名
location.protocol返回页面的 web 协议
location.assign(url)加载新文档
 

window.History 对象

window.history 对象包含浏览器历史,为了保护用户的隐私,JavaScript 访问此对象存在限制。

方法描述
history.back()等同于在浏览器点击后退按钮
history.forward()等同于在浏览器中点击前进按钮
 

window.navigator 对象

window.navigator 对象包含有关访问者的信息。

属性 / 方法描述
navigator.appName浏览器应用程序名称
navigator.appCodeName浏览器应用程序代码名称
navigator.platform浏览器平台(操作系统)
navigator.cookieEnabledcookie 是否启用
navigator.product浏览器引擎名称
navigator.appVersion浏览器版本信息
navigator.userAgent由浏览器发送到服务器的 user-agent header
navigator.language浏览器语言
navigator.onLine浏览器是否在线
navigator.javaEnabled()Java 是否已启用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值