// 命名规范
变量/属性 以名词开头, 以下划线分割
方法/函数 以动词开头, 遵循小驼峰
常量全大写
构造函数首字母大写
// 获取标签
document.querySelector('');
document.querySelectorAll('');
document.getElementsByClassName('');
document.getElementById('');
document.getElementsByTagName('');
document.getElementsByName('');
// 类名
elem.className
elem.className += ' class';
// 标签内容
elem.innerHTML
// 所有内容
elem.outerHTML
// 所有内容包括自身
elem.innerText
// 文本内容
elem.outerText
// 设置时, 包括自身在内设成文本; 获取时, 只有文本内容
// 标签的属性
elem.getAttribute('属性名');
elem.setAttribute('属性名', 属性值);
elem.removeAttribute('属性名');
// style
elem.style.cssText
elem.style.cssText += '; font-size: 20px; color: #000;';
elem.style.fontSize
elem.style.fontSize = '20px';
// 获取窗口尺寸
window.innerWidth
window.innerHeight
// 获取文档尺寸, 针对HTML5的文档声明
document.body.clientWidth
document.body.clientHeight
// DTD文档声明, 用 document.documentElement
// 文档scroll
document.body.scrollTop
document.body.scrollLeft
scrollTo(100, 100);
参考视口左上角
scrollBy(100, 100);
参考当前位置
// 获取相对窗口的位置
elem.getBoundingClientRect().left
elem.getBoundingClientRect().top
// 获取相对文档的位置
elem.getBoundingClientRect().left + document.body.scrollLeft
elem.getBoundingClientRect().top + document.body.scrollTop
// 创建节点
var node = document.createElement('标签名');
// 从后面添加节点
elem.appendChild(node);
// 从前面添加节点
elem.insertBefore(node, elem.childNodes[0]);
// 父节点
elem.parentNode
// 子节点
elem.children[0]
// 上一节点
prev = elem.previousElementSibling || elem.previousSibling;
// 下一节点
next = elem.nextElementSibling || elem.nextSibling;
// 克隆节点
var newNode = elem.cloneNode(true);
// 替换节点
elem.parentNode.replaceChild(newNode, elem);
// 删除节点
elem.parentNode.removeChild(elem);
// 计时器
setTimeout()
clearTimeout()
setInterval()
clearInterval()
requestAnimationFrame()
cancelAnimationFrame()
// 打印
document.writeln('<pre>保留换行符</pre>');
console.log("%c百度\nhttps://www.baidu.com", "color: #ff0; font-size: 60px;");
console.time('开始和结束计时的命名要一样');
console.group('分组展示');
console.info('和log相似');
console.error('错误消息');
console.warn('警告消息');
console.groupEnd();
console.timeEnd('开始和结束计时的命名要一样');
// location
location.host
// 域名, 不包括协议
location.search
// 问号, 包括问号
location.reload()
// 刷新或打开新页面
location.replace()
// 替换当前页面
// Math
var random = Math.random()*1;
// 随机, (0, 1)
parseInt(random)
// 取整, 0
Math.round(random)
// 四舍五入, 0 或 1
Math.floor(random)
// 向下取整, 0
Math.ceil(random)
// 向上取整, 1
Math.max(num1, num2, num3...)
// 取最大值
Math.min(num1, num2, num3...)
// 取最小值
Math.sin(x)
// x的正弦值
Math.cos(x)
// x的余弦值
Math.PI;
// π
Math.abs(x)
// x的绝对值
Math.sqrt(x)
// x的平方根
// Math.pow(x, y)
x的y次方