1.怎样创建函数和对象
a,函数的创建
1,使用function关键字,使用方式与php方式基本一致,
js的function的形式不允许有默认值
2,使用function内置对象进行实例化
var 函数名称=new Function('参数1':'参数'...);
调用:函数名称();
2,使用匿名函数的方式
1,var 函数名称=function(){}
2,调用 函数名称();
3,javascript的函数的参数
1,javascript中的函数不允许给参数赋初始值
2,传递的参数个数与函数定义的参数个数不匹配时:
如果传递的参数个数小宇函数定义的参数个数,javascript会自动将多余的参数值设置为undefined;
如果传递的参数个数大禹函数定义的参数个数,name多余传递的参数将会自动忽略
编码函数
escape();
将各种数值转换为ASII码
unescape()
解码函数
一般这两个函数用于url的跳转和转换
eval()
该函数将字符串指定为对象
示例:eval('var a=100;');
alert(a);
会直接弹出100
JavaScript 的系统函数
数值判定函数 isNaN()
判断是否是数字型变量isNaN()
证书转换函数parseInt()
在js中,可以将二进制,八进制,十六进制转换成十进制
JavaScript的变量作用域
1.变量的优先级
如果在函数李丁一了一个与全局变量名相同的局部变量,那么在该函数体里全局变量将补齐作用么就想到与全局变量不存在
2.在函数体内定义全局变量
在函数体内使用var关键字定义的变量为局部变量,如果要在函数体内定义全局变量,
则不能使用var关键字,只需要直接给变量赋值即可。
对象的声明
1,使用原生对象
Var对象名称=new Objece();
对象.属性=属性的值
对象.方法=方法的声明
2,使用JSON对象
1, Var对象名称={属性1:属性值,属性2:属性值;方法名(){}}
2.json可以与php进行数据交换,是ajax使用最多的一种
3.使用构造函数的方式声明对象
function 对象名称($name,$age){
this.name=$name;
this.age=$age;
this.say=function(){
alert(hello,word);
}
}
var p1=new Person('zhangsan','100');
var p2=new Per son();
JS中的数组
第一种:
var arr=new Array();//声明一个数组
arr[0]=100;
arr[1]=200;//向数组添加新值
arr['name']='zhangsan';//js的数组不支持关联数组
document.write(arr.length);//打印数组的元素个数
document.write(arr[0]);//打印数组的某一个元素
第二种:
var arr=new Array(100,200,300);
document.write(arr);
第三种:
var arr=new Array(3);
arr[0]=100;
document.write(arr);
第四种:
var arr=[100,200,300];
document.write(arr);
js中的日期对象
var date=new Date();
document.write(data);
字符串的查找,匹配,替换,分割
var str='abc-bcd-ifg';
document.write(str.search(/\d/)+"<hr/>");
document.write(str.match(/-/g)+"<hr/>");
document.write(str.replace(/-/g,'*')+"<hr/>");
document.write(str.split(/-/g)+"<hr/>");
1.Browser Object Model
2.浏览器对象模型
2.什么是DOM?
1.Document Object Model
2.文档对象模型
BOM对象比较重要的内容:
a,Window
1,setInterval();
2,clearInterval();
3,setTimeout();
4,clearTimeout();
5,alert();
6,confirm();
7,print();
8,frames();
b, navigator
1,appname();
2,appversion();
3,paltform
4,userAgent
c,screen
1,availHeight;
2,availwidth;
3,width;
4,heght
d,history
1,length;
2,back();
3,forward();
4,go();
e,location
1,href
2,reload();
BOM 查找元素
getElementById();
getElementsByTagName();
getElementsByName();
getattribute();
setAttribute();
removeAttribute();
节点:
元素节点:getElementById(); 通过ID查找节点
事件的绑定
时间的绑定分为两种:
1,传统事件的绑定(内联模型,脚本模型)
2,现代事件绑定(DOM2级模型)
1,传统事件绑定的问题
var box=document.getElementById('box');//获取元素
box.οnclick=function(){
alert('lee');
}
box.οnclick=function(){
alert('lee');
}
缺点:当两组程序或者两个js文件同事执行的时候,后面的会把前面一个完全覆盖掉,导致前面的完全失效。
a,函数的创建
1,使用function关键字,使用方式与php方式基本一致,
js的function的形式不允许有默认值
2,使用function内置对象进行实例化
var 函数名称=new Function('参数1':'参数'...);
调用:函数名称();
2,使用匿名函数的方式
1,var 函数名称=function(){}
2,调用 函数名称();
3,javascript的函数的参数
1,javascript中的函数不允许给参数赋初始值
2,传递的参数个数与函数定义的参数个数不匹配时:
如果传递的参数个数小宇函数定义的参数个数,javascript会自动将多余的参数值设置为undefined;
如果传递的参数个数大禹函数定义的参数个数,name多余传递的参数将会自动忽略
编码函数
escape();
将各种数值转换为ASII码
unescape()
解码函数
一般这两个函数用于url的跳转和转换
eval()
该函数将字符串指定为对象
示例:eval('var a=100;');
alert(a);
会直接弹出100
JavaScript 的系统函数
数值判定函数 isNaN()
判断是否是数字型变量isNaN()
证书转换函数parseInt()
在js中,可以将二进制,八进制,十六进制转换成十进制
JavaScript的变量作用域
1.变量的优先级
如果在函数李丁一了一个与全局变量名相同的局部变量,那么在该函数体里全局变量将补齐作用么就想到与全局变量不存在
2.在函数体内定义全局变量
在函数体内使用var关键字定义的变量为局部变量,如果要在函数体内定义全局变量,
则不能使用var关键字,只需要直接给变量赋值即可。
对象的声明
1,使用原生对象
Var对象名称=new Objece();
对象.属性=属性的值
对象.方法=方法的声明
2,使用JSON对象
1, Var对象名称={属性1:属性值,属性2:属性值;方法名(){}}
2.json可以与php进行数据交换,是ajax使用最多的一种
3.使用构造函数的方式声明对象
function 对象名称($name,$age){
this.name=$name;
this.age=$age;
this.say=function(){
alert(hello,word);
}
}
var p1=new Person('zhangsan','100');
var p2=new Per son();
JS中的数组
第一种:
var arr=new Array();//声明一个数组
arr[0]=100;
arr[1]=200;//向数组添加新值
arr['name']='zhangsan';//js的数组不支持关联数组
document.write(arr.length);//打印数组的元素个数
document.write(arr[0]);//打印数组的某一个元素
第二种:
var arr=new Array(100,200,300);
document.write(arr);
第三种:
var arr=new Array(3);
arr[0]=100;
document.write(arr);
第四种:
var arr=[100,200,300];
document.write(arr);
js中的日期对象
var date=new Date();
document.write(data);
字符串的查找,匹配,替换,分割
var str='abc-bcd-ifg';
document.write(str.search(/\d/)+"<hr/>");
document.write(str.match(/-/g)+"<hr/>");
document.write(str.replace(/-/g,'*')+"<hr/>");
document.write(str.split(/-/g)+"<hr/>");
BOM
1.Browser Object Model
2.浏览器对象模型
2.什么是DOM?
1.Document Object Model
2.文档对象模型
BOM对象比较重要的内容:
a,Window
1,setInterval();
2,clearInterval();
3,setTimeout();
4,clearTimeout();
5,alert();
6,confirm();
7,print();
8,frames();
b, navigator
1,appname();
2,appversion();
3,paltform
4,userAgent
c,screen
1,availHeight;
2,availwidth;
3,width;
4,heght
d,history
1,length;
2,back();
3,forward();
4,go();
e,location
1,href
2,reload();
BOM 查找元素
getElementById();
getElementsByTagName();
getElementsByName();
getattribute();
setAttribute();
removeAttribute();
节点:
元素节点:getElementById(); 通过ID查找节点
事件的绑定
时间的绑定分为两种:
1,传统事件的绑定(内联模型,脚本模型)
2,现代事件绑定(DOM2级模型)
1,传统事件绑定的问题
var box=document.getElementById('box');//获取元素
box.οnclick=function(){
alert('lee');
}
box.οnclick=function(){
alert('lee');
}
缺点:当两组程序或者两个js文件同事执行的时候,后面的会把前面一个完全覆盖掉,导致前面的完全失效。