标签:function 定时器 console log sum ele var js
复习
-
函数创建
function 函数名(){ var total = 10+20; }
-
调用函数
函数名(); 函数名();
-
参数
function sum(n,m){//形参 var total = n+m; } sum(100,200); sum(100); //形参未赋值,默认 undefined var a; console.log(a);
-
返回值
function sum(n,m){//形参 var total = n+m; // return total; console.log(111); } var t = sum(100,200); console.log(t);
- 返回值默认值也是undfined
-
arguments
function sum(){//形参 //arguments [10,20] } sum(10,20);
-
函数不同形式
命名函数: function sum(){ } 事件处理函数: ele.onclick = function(){ sum(10,20) } ele.onclick = sum; 对象的方法: var obj = {name:'ujiuye',age:18,eat:function(){ },aa:{x:,y:,}}
-
this关键字
1- 普通函数,this执行window 2- 事件处理函数里面this指向触发事件的元素 3- 对象方法里面的this,指向调用方法的对象 obj.eat()
-
作用域: 全局作用域 \ 私有作用域(函数作用域)
-
作用域链: 函数中变量查找机制,先从当前作用域查找,如果没有,依次向上级作用域查找,如果找到全局没有,报错
-
两种变量:全局变量\局部变量(在函数里面var 的和函数的形参)
-
预解析(变量提升):
-
带var 先声明,不赋值(默认值undefined)
console.log(a);//undefined var a = 10; console.log(a);//10
-
带function 声明的同时赋值
sum(); function sum(){} fn();//报错 var fn = function(){ } fn();
-
-
样式操作
设置: ele.style.attr = val; 获取: ele.style.width 标准: getComputedStyle(ele)[attr] ie: ele.currentStyle[attr] function getCss(ele,attr){ return ele.currentStyle == "unfdefined" ? getComputedStyle(ele)[attr] : ele.currentStyle[attr]; } getCss(oBox,'width');
(一) 定时器
1- setTimeout : 等待一段时间执行function,只执行一次
setTimeout(function(){},1000);
2- setInterval: 每隔一段时间执行function,重复执行
setInterval(function(){},1000);
3- 清除定时器
-
clearTimeout()
var i = 0; var timer = setInterval(function(){ //console.log('***'+timer); i++; if(i == 5){ //clearInterval(1); //清除定时器传入参数是代表定时器的那个数字 clearInterval(timer); //一般设置定时器时用变量接收一下,清除时传入变量名 } console.log(i); },1000);
-
clearInterval()
- 这两个方法技术上都可以清除两种定时器,但是为了区分,应该对应起来用
4- 定时器异步
-
定时器时js中的一种异步机制,永远会在同步代码之后运行
setTimeout(function(){ console.log(111); },0) console.log(222); //先输出222,再输出111
标签:function,定时器,console,log,sum,ele,var,js 来源: https://www.cnblogs.com/didamehulayou/p/11115977.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。