学过javascript还是觉得学的不扎实【总结】
今天我写这篇⽂章,是因为被点名提问,好多东西虽然已经学过看过,但有没有真正的理解过为了更好地学习,我写了这篇总结篇,当然此⽂只是⽂档。只是辅导作⽤。
有⼈说javascript很难,但是这是h5开发基础语⾔,让我们⼀起跨过这个坎.....
javascript --语⾔:ECMAjavascript(语法)Dom和Bom组成
web开发程序执⾏流程:http请求解析url路径请求服务器
http超⽂本传输协议
两种javascript注释语法 : // /* */
过多的javaScript注释会降低JavaScript的执⾏速度与加载速度,因此应在发布⽹站时,去掉多余的注
释。
⼀、数据类型:
1、任何涉及NaN的操作(例如NaN/10)都会返回NaN
2、NaN与任何值都不相等,包括NaN本⾝。⼀旦在程序中出现:NaN。那么肯定进⾏了⾮法的运算操作。
null值表⽰⼀个空对象指针,所以当你使⽤typeof操作符检测null值时会返回”object”
typeof(null) //object
alert(typeof(null))//object
alert(typeof NaN)//number
alert(Number(true)) true 表⽰1 false 表⽰0
alert(parseInt("123.321blue")) //转换到出现⽆法转换的为⽌ blue /NAN
var a = 11,b = '22';
var c = a + b;
console.log(c)//33 当⼀个是数字类型⼀个是字符串 js引擎会默认进⾏⾮算法计算,利⽤运算符 "+" 这个特性,可以很⽅便的将Number转换成string
var a = 22,b = '11';
var c = a - b;
console.log(c)//11 与 "+" 相反,这⾥把b默认转为了数字型 11进⾏了算法计算,利⽤这个特性很⽅便的将string转为了Number
var i = 1; j = ++i;
console.log(j);
⼆、表达式,是通过把常量,变量,函数等通过运算逻辑的⽅式连接起来。
运算符常⽤到的有 :
算法运算符⼀般是 + - * / %(膜,⽤来取余)
⽐较运算符 != == <= >= ⼀般⽤来判断
逻辑运算符 ! 取反 && 并存关系两个为true才为true || ⼀个为true就是true
三元运算符 ? 是判断条件 : 前为true 后为false eg: 1<2 ? alert(1+“⼩于2”): alert(1+"
⼤于2")
void是⼀个操作符,没有返回值。⽤法格式: void (0) 最常见的a href="#" 这种形式会整体刷新页
⾯,href="javascript:void(0)" 则不会
逗号运算符。
声明变量⽤⼀个var,逗号连接‘,’ 推荐这么写。
条件语句:
if :判断语句,经常能⽤到,让javascript程序选择性的执⾏语句。
switch 当只判断⼀条表达式时,⾸先使⽤switch。
for循环语句很常⽤,⽤到递增、递减。
return 返回值。
三、函数:提⾼了代码的重⽤性(复⽤性)
函数需要调⽤才能执⾏。
函数⼜有作⽤域。在函数外部是全局变量,任何地⽅都可以使⽤。反正局部变量,只能在函数⾥执⾏。
Math 对象:
Math.random() 返回0-1之间的随机数
随机数定义随机值: Math.floor(Math.random()*(最⼤值-最⼩值+1)+最⼩值)
String: 处理⽂本的字符串类型
声明⼀个String
.charAt() 返回所在的字符
.charCodeAt() 返回所在的Unicode 编码
String.fromCharCode() 返回 Unicode 编码
.search() 返回与参数匹配的位置
.replace() 替换的字符串
.substring() 提取两个下标之间的字符参数不能是负数与slice()相似
.substr() 第⼀个是开始下标第⼆个为长度
.match() 到字符串内索引指定的值.split() 从指定地⽅分割成数组字符串
.concat() 连接两个或者多个字符串
var str=new String('lijiayang');
alert(str.search('jia'))
alert(str.substring(4))
四、数组:键值对
添加数据
var a=[];
a[0]='1';
a[1]='2';
也可以⽤a.push('3')
删除 delete arr[0]
pop() 删除最后⼀个元素
join() 替换分隔符
reverse() 元素顺序颠倒
sort() 元素进⾏排序
concat() 合并数组
slice() 截取数组
splice() 插⼊、删除、替换
unshift() 在头部添加元素
shift() 删除第⼀个元素
var a=[];
a[0]='1231';
a[1]='213';
console.log(a)
for/in循环⽤在循环数组和json
五、Dom:HTML ⽂档中的所有内容都是节点(元素树)
DOM 节点关系:上级(parent) ⼦级(children) 同级(sibling)
1、parentNode    获取该节点的⽗节点
2、childNodes    获取该节点的⼦节点数组
3、firstChild    获取该节点的第⼀个⼦节点
4、lastChild    获取该节点的最后⼀个⼦节点
5、nextSibling    获取该节点的下⼀个兄弟元素
6、previousSibling    获取该节点的上⼀个兄弟元素
7、children 获取所有的⼦元素节点
appendChild() 创建新节点
createElement() //创建⼀个具体的元素
createTextNode() //创建⼀个⽂本节点
appendChild() 添加
removeChild()移除
replaceChild()替换
insertBefore()插⼊
cloneNode() ⽅法创建指定节点的精确拷贝
createAttribute() 创建新的 Attr 节点
offsetParent 只读属性返回离当前元素最近的⼀个有定位属性的⽗节点offsetLeft 返回元素的X坐标offsetTop 返回元素的Y坐标scrollHeight 过去滚动⾼度
scrollLeft 设置或获取可视窗⼝的左边之间的距离
scrollTop 设置或获取可视窗⼝的顶端之间的距离
Bom:
六、Window : 表⽰浏览器窗⼝
全局变量是 window 对象的属性。
全局函数是 window 对象的⽅法。 window时间函数:
setInterval()定时器
setTimeout () ⼀次性定时器
clearInteval() 清除定时器
clearTimeout() 清除⼀次性定时器
七、系统弹出框:
学javascript前要学什么alert()、confirm()、prompt()
Location 对象:
location.hostname 返回当前 URL 的主机名。
location.pathname 返回当前 URL 的路径部分。
location.protocol 返回当前 URL 的协议。
location.href 返回完整的 URL。
⼋、事件流:
事件冒泡:
从最具体的元素向上传播叫做事件冒泡
事件捕获:
由document⽂档流到最具体的元素为⽌
事件委托:
把⽗元素的事件赋予⼦元素
事件绑定:
给元素添加事件
event对象:
Event 对象代表事件的状态事件通常与函数结合使⽤键盘按键的状态、⿏标的位置、⿏标按钮的状态
九、表单验证,登录信息⼀般都会⽤到验证:
⽤/javascript/ 在字符串前后分别添加⼀个斜杠 ^表⽰开始 $结束

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。