千峰js 学完
程序被读取到内存中执行 被cpu调用
数据类型 基本数据类型(number,boolean,string,null,underfind) 引用数据类型(复合数据类型)
转换boolean 空 null underfind NaN 都是false 其他ture
变量 标识符(命名规则) typeof 查看类型
运算符 :算术运算符(+-*/%) 其他数据类型进行算数运算 都会转换成Number 类型 0可以做除数 结果Infinity (最大值)
逻辑运算符
表达式1&&表达式2 满足表达式1在满足表达式2 在为true
表达式1|| 表达式2 第一个不满足第二个满足 true 满足其中一个即可
!表达式 非运算
关系运算符
== > < >= <= != === !== 返回布尔值 单个字符比较 比较AscII码 多个字符 一位一位比较 第一位 第二位 注意:null == underfind Number(null) =0
*一元运算符(++ -- ) {
以a为准 a前不变 a后自增 单独运算a++ ,++a没有区别
}
(单目 三目)表达式1 ? 表达式2 :表达式3;
表达式 :任何数据与字符组成;
流程控制语句
if else 分支语句
复合数据类型
数组,声明 new Arrary(20) // 20个空数组 new Arrary('sa',12) [12,26,55,51]
遍历 for ... in 数组
方法 :pop删除后一位 push后面增加数组(返回数组长度) unshift 前面插入数组 shift 删除头部数组 concat 合并数组生成新数组 arr.concat(数组) slice(start,end) 提取范围内的数组不包含end splice 替换原数组 join 替换数组分割号 reverse 颠倒逆序 下标逆序
sort 排序 字符串时按ASCII排序 按照数值排序 内部写一个函数 sort(fuction(v,v1){return v - v1)); 小到大排序
字符串 和数组类似 只读 不可修改只能覆盖
方法 charAt() 查找索引对应的字符串 charCodeAt() 索引对应的ascii码 String.formCharcode转换成ascii转换文字 search 查找当前值在那个位值 indexOf 查找当前位置对应的值 lastindeOf右往左查一样
split()分割成数组 slice() subString 类似 subStr(start,length) 对应
BOM 浏览器对象模型
history back 返回上一页 forward 下一页 go 指定页数
location 地址栏 protocol 区分协议 hostname 域名 pathname 出去域名的内容 port 端口 hash 锚点 #xx
assign指定网页 replace()跳转指定网页 和assign相比不能history回退 reload 刷新 里面填true强制刷新
DOM 控制浏览器元素 (节点)属性 文本
得在 window.onload 加载好了才能使用 document根目录
获取Id document.getElementById
获取css名字 document.getElementsByClassName
获取name 适用于input 的那么 document.getElementsByName
获取标签名 document.getElementsByTabName
以css选择器选择节点 类似 document.querySelector 第一个 document.querySelectorAll 多个
节点
childNodes 当前节点下子节点 parentNode 找到子节点的父节点 firstChild 子节点的第一个节点 lastChild
子节点下的元素节点 Children firstElementchild nextSibing兄弟节点下一个 previousSibing 上一个兄弟节点
setAttribute/getAttribute 属性节点 不规范的属性节点访问不到 removeAttribute直接删除属性节点
创建节点
createElement 创建
removeChild 删除
createTextNode 添加文本
replaceChild替换
insertBefore前面插入
cloneNode克隆
查询元素css 内容 getComputedStyle【名】.value IE百度
正则 regexp /dsf/i 允许大小写g全局查找m换行冲洗计算行
元字符 n? 0/1个 n+ 一个以上 n* 任意个 n{m,n}m到n个 n{n,}n个以上 ^头开始$结尾
\w数字字母下划线 \W 非 \d 数字 \D 非 \s 空 \S 非 \.转义.
方法 test 匹配符合 返回truefalse exec找到返回位置
字符串 match找到返回 replace替换原字符串 split分割数组
本地数据储存
localStorage setItem(key,value) getItem(key) removeItem(key) 5M String
cookie 4kb 没学
this 指向 对象调用指向对象 更改调用 apply(this,[arguments,..]) call(this,arguments) bind(arguments)[] 预调用