JavaScript入门笔记

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.

 

 

 

 


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值