代码注意:
① 易维护
② 易扩展
③ 易复用
大话设计模式---这本书瞧瞧!
变量的作用域就是在定义这个变量的大括号之内!
函数:
有一定功能代码体的集合!
写一部分代码从头到尾检查一遍,来排查错误!
方法:定义à使用
function 方法名(参数列表){
//方法体
}
方法名(); //调用!
方法可以随便写,不调用的话就是死代码!
Js中方法可以写在任何位置,可以在任何位置调用(页面早就加载完成该方法)!
方法功能:
直接把某些功能写在方法里面,需要用到的时候随时调用!
另一种定义方法:
var fun = function(){
//方法体
}
fun();
返回值:
var fun = function(){
//方法体
return 123;
}
fun();
123就是该方法的返回值!
Return:结束方法,返回数据(可以放if里面,不同的操作返回不同的值)!
重复操作就写个方法,用的时候就调用!
var inputimes=prompt("该数组几个值?");
var arr=[];
for(var i=0;i<inputimes;++i){
arr.push(prompt("第"+(i+1)+"个数为:"));
}
var maxnum=arr[0]; //定义一个最大值!
var minnum=arr[0]; //定义一个最小值!
var maxwz;
var minwz;
for(var i=0;i<arr.length;++i){
if(maxnum<=arr[i]){
maxnum=arr[i]; //用maxnum跟数组数据不停的对比,然后循环完成之后maxnum被赋值成最大数字!
maxwz=i;
}
if(minnum>=arr[i]){
minnum=arr[i]; //用minnum跟数组数据不停的对比,然后循环完成之后minnum被赋值成最小数字!
minwz=i;
}
}
arr[maxwz]=arr[0];
arr[0]=maxnum;
arr[minwz]=arr[arr.length-1];
arr[arr.length-1]=minnum;
alert(arr);
//第一遍写这个代码的时候,给minnum赋值时0,所以走到for循环内第2个if时会永远进不去这个if,所以会显示最后一个元素值一直是0!!!
参数列表:
function 方法名(参数列表){
//方法体
}
方法名();
定义的时候:形参
调用的时候:实参
形参>实参:Undefined!
实参>形参:不显示!
So:形参数量==实参数量!
Arguments:用在方法内,代表实参,本身是一个数组!
Arguments[0]或者arguments.length都可以!
程序如果得不到想要的效果,从头捋一遍!看看各个变量的值是如何变化的?
对于字符串的操作:
将任意类型转成字符串:.tostring(); string()
字符串转数组:.split()
研究一下eval!
Dom操作套路:
Js的组成:
① ESCAscript:基础语法!
② BOM:浏览器对象模型!
Window:窗口
Location:地址栏
History:历史记录
Document:文档(页面上显示的都算是Document)
③ DOM:文档对象模型,即Document文档!
定时器:
① setTimeout(function(){},时间); //延迟执行
② setInterval(function(){},时间); //间隔执行
--时间按照毫秒来计算!
清除定时器:
clearTimeout(setTimeout赋值的变量名);
clearInterval(Interval赋值的变量名);
Dom操作套路:
找到元素à操作元素!
① 找到元素
document.getElementById();
document.getElementsByName();
document.getElementsByTagName();
document.getElementsByClassName(); --Elements返回数组,一个标签就是一个数组元素值!
② 操作元素内容
非表单元素:obj.innerHTML获取/修改元素的内容!
表单元素:obj.value获取/修改表单的内容(直接写获取值,加上等号就是修改值)!
③ 操作元素属性
<div></div>
Obj.setAttribute("class","test");
<div class="test"></div>
Obj.getAttribute();
④ 操作元素样式
Obj.style.color –只可以操作行内样式,外部引用是操作不了的!!!
⑤ 操作元素事件
⑥ 创建删除元素
以后写代码多用变量,少用具体值!!!