js对象:
1.js对象
obj=new Object();
obj.username='user1';//属性
obj.say=funcyion(){
alert(123); //方法
}
2.dom对象
eleobj=document
3.json对象
jsobj={
‘属性’:‘值’,
‘属性’:‘值’,
‘属性’:‘函数’
};
调用函数:jsobj.say();//函数调用要有()
NaN类型:
#not a number;
str='10'; //不能有数字
num=Number(str)+5;
null类型:
str=null
#一般用于提前规划一些变量或给变量赋初值
undefined类型:
#未定义变量 //报错
变量作用域:
1.全局变量
变量定义时如果没有var则全部都是全局变量
2.局部变量
只有在函数内部前面带var的变量为局部变量,局部变量只能够在函数体内部使用
---------------------------------------------
变量类型测试:
1.typeof();
2.arr insteanceof Array;
1.typeof()可判断的类型:
1.string
2.number
3.boolean
4.object
5.undefined
#js中所有变量都是对象
js中前面的对象不用写的
1.Global对象(js内部对象)
typeof(); //Global.typeof缩写
parseInt();
parseFloat();
eval();
Number();
String();
Boolean();
2.window对象(浏览器提供的对象)
alert();
变量类型转换:
1.整形->字符串
1)num=10;
str=String(num);
2)num=10;
str=num+‘’;
2.字符串->整型
1)str='10px';
num=parseInt(str);
3.所有类型->布尔类型(!!)(为假的情况)
字符串('') //''里没有东西,包括没有空格才为假
整型(0)
浮点型(0.0)
null
Nan
undefined
4.所有类型->布尔类型
1)v='';
b=Bollean(v);
2)v='';
b=!!v;
5.json字符串转json对象
1)v="{'username':'user1','age':'20'}";
obj=eval('('+')');
alert(obj.suername);
2)v="({'username':'user1','age':'20'})";
obj=eval();
alert(obj);
变量的运算符:
1.+-*/
2.in
3.insteanceof //判断某个对象是否由某个函数构成
4.delete
in运算符: //只能判断属性
obj={'age':'','':''}; //判断属性在不在对象中
alert('age' in obj) //true
arr=['1','2','3'] //判断数组下标在不在对象中
alert('3' in arr) //false,因为数组下标从0开始
deleate运算符:(不能删除局部变量)
v='abc';
deleate v;
aleart(v);
js语法:
1.ifElse语句
2.switch语句
3.while循环
4.for循环
5.forIn遍历
forIn遍历: //对付json(对象)
obj={'':'','':''}
for(i in obj){
document.white('<h1>'+obj[i]+'</h1>');
//输出变量必须用[],输出数组的值要加 数组名.下标变量
}
消息框:
1.警告框
alert(123);
2.确认框
confirm('您确认删除吗?');
3.提示框
prompt('请输入图片的名字');
js内置对象
---------------------------------------------
1.数学
2.日期
3.定时器
4.超时器
5.字符串
6.数组
js对象:
1.js内置对象
2.js事件对象
3.BOM;浏览器对象
4.DOM文档对象
数学对象:
1.生成对象
Math
1.属性:Math.PI //属性相当于一个变量
2.方法: //方法含花括号
Math.ceil(); //天花板,代表上一个整数
Math.floor(); //地板,下一个整数
Math.round(); //四舍五入的整数
Math.random(); //0~1之间很难碰到相同小数的小数
Math.max();
Math.min();
日期对象:
1.生成对象
dobj=new Date();
2.方法:
getFullYear();
getMonth(); //月份从0开始
getDate();
getHours();
getMinutes();
getSeconds();
3.秒表实例:
定时器:
1.定义
sobj=setInterval(function(){
//每隔一秒钟执行此代码段
},1000)
2.清除
claerInterval(sobj);
2.超时器:
1.定义
claerTimeout(function(){
//每隔一秒钟执行此代码段
},1000)
2.停止
3.清除
claerInterval(sobj);
字符串:
属性:
length //对象.属性;对象.方法();
方法:
indexOf() //字符串第一次出现的位置
lastIndexOf() //字符串最后出现的位置
substr(0,5) //从第一个字符(0)的我位置开始,截取(从1开始)五个,无,就是从此处到最后
slice(start,end) //不包含最后一个位置截取
split(reg) //按某一个字符分隔开,字符串分隔成数组,或用|
search(reg) //找字符串查找,不分大小写
match(/home/ig) //字符串匹配,i不分大小写,g全部匹配,若为match(home),则
replace(原值,替换值) //字符串替换,只返回一种性质,要原值也可将home改为/home/ig
数组对象:
属性:
length
方法:
join("/"); //数组连接成字符串
pop(); //把数组最后一个值删掉改变原数组
push(); //从数组最后面压入一个值改变原数组
shift() //从数组最前面一个值删掉改变原数组
unshiift() //从数组最前面压入一个值改变原数组
reverse() //数组反转,但不改变原数组返回新数组
concat() //连接器,arr3=arr.concat(arr2)
slice(start,end) //从哪开始到哪结束不改变原数组
splice(2,1) //从2开始截取1个并且改变原数组
sort(show)
function show(a,b){
return a-b; //正序,return b-a;倒序
}
toUpperCase() //字符串转大写
toLowerCase() //字符串转大写
运算符:
1.数学运算符:+ - * / %(余)
2.比较运算符:> < == != <= >==
3.逻辑运算符:&& || !
正则表达式:match;
1.修饰词:i,g,m //m可以把反斜线识别成多行
2./ab[yz]cd/ig 中括号中含有的任意一个字符
/ab[^yz]cd/ig除了中括号中的任意一个符合的字符串
[0-9] [a-z] [A-z]
3.元字符:
\w //任意字母或数字或下划线
\W //除了字母数字下划线任意一个字符,与\w取反
. //除了换行符,代表任意任意一个字符
\d //任意一个数字
\D //任意一个非数字
\s //任意一个空格
\S //任意一个非空格
\b //匹配单词边界
\B //非单词边界
\0 //NULL字符
\? //匹配没有字符
\n //匹配换行字符
\xxx //八进制
\xdd //十六进制
4.量词: //修饰前面元字符
n+:匹配多个元字符
n?:带掉0个或一个前面的元字符
n*:任意个数元字符
n*?:精确匹配任意多个字符
n*:模糊匹配任意多个字符
n{1,20}:一个以内二十个一下匹配的字符
$:行末
^:行首
a(?= b):查找在b之前的a
5.正则实例:
1.匹配电话号码
2.匹配qq邮箱
3.匹配日期($使用向后引用)
JS事件对象:
js特效
1.触发时间
2.属性改变
3.样式改变
绑定事件:
1.标签
2.js代码中绑定事件
鼠标事件:
onclick:单击
ondblclick:双击
onmouseenter:鼠标移入时间
onmouseleave:鼠标离开
onmousemove:鼠标移动
键盘事件:
onkeydown //键盘按下事件
onkeyup //键盘弹起事件
onkeypress //
1.屏幕的可视高:document.documentElement.clientHeight
2.屏幕的总高度:document.documentElement.scrollHeight
3.滚动的高:document.documentElement.scrollTop
document.body.scrollTop(chrome)
表单事件:
onfocus //得到焦点
onblur //失去焦点,鼠标移开
onchange //当值改变会触发
onselect //当选择表单的值时会发生变化
onsubmit //当表单提交,id在form里
onresert //当表单重置,id在form里,conform
表单方法:
其他事件:
onload:加载时
onerror:加载失败时
onresize:当浏览器大小发生改变时
onscroll:当窗口滚动条发生滚动时
网页加载;
1.标签加载完毕:obj.οnlοad=function(){}
2.窗口加载完毕:window.οnlοad=function(){}
1.select()
2.blur()
3.focus()
4.click()
5.submit()
6.reset()
如何阻止表单的默认行为:
1.<a herf=''></a>
2.<form action=''>
<input type='submit' value=''>
</form>
3.