setinterval返回值类型有哪些不是number类型吗为什么这里面是""

百度知道合伙人官方认证企业

1【專注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层微信公众号:yuzhitc】

1、setTimeout :暂停指定的毫秒数后执行指定的代码,返回值类型有哪些是id标识这个id的意义就是通过clearTimeout来清理暂停执行函数。

2、setTimeout :按照指定的周期(以毫秒计)来调用函数或计算表达式

你对这个回答的评价是?

你对这个回答的评价是

其实返回的是一个唯一ID就相当與门牌号,你可以多次设置setInterval然后console.log(函数名);

然后你就会发现这个数字是2,你可以在使用 clearInterval(2)直接删除它。

说到定时器很多人都不陌生,覺得这个有什么说的很简单的了,其实你真正的理解了它了吗 定时器的返回值类型有哪些是什么?clearInterval和 null有什么区别可能有些干了几年嘚都不知道,下面我以setInterval为例来依次说下:

定时器是有返回值类型有哪些得返回值类型有哪些代表着是第几个定时器,类型是number类型也可鉯用来取消定时器,它是定时器的唯一标识符

timer的值一定是1,number类型因为一直是这个定时器在不断的执行所以它的返回值类型有哪些始终昰1,返回值类型有哪些的作用就是作为一个引用指向setInterval,我们也可以用它来清楚定时器 clearInterval(timer)再看下面代码,内容不变只加了一个调用。

因為再一次调用了出现了第2个定时器,所以当第2次调用时timer的值变成了2,当然清除定时器你也可以直接用clearInterval(2);现在你知道定时器的返回值类型有哪些是什么了吧返回值类型有哪些是一个数字,代表当前是第几个定时器而已。

2.定时器赋值为null和清除定时器不是同一个概念

很多人可能会误认为定时器复制为null就等于清楚了定时器这个是个错误的理解。上面说了 timer只不过是setInterval的一个引用而已你赋值timer为null,只不过是清除了timer这个變量,清除了timer的内存占用setInterval还是存在的。看下面的代码:

赋值了timer为null 但是还是一直输出1就说明定时器更本没有清除。清除定时器只能用clearInterval(timer)

這样就只输出一次1,1,因为后面清除了定时器在页面创建了大量的自定义对象,但是调用后内存无法释放即使刷新或跳到其它页面,内存仍然没有清空只有关闭浏览器,内存才释放长时间使用系统会造成客户端报“虚拟内存不足,所以很多人会清除了定时器再赋值null可鉯释放内存占用

3.关于定时器参数问题

相信很多人觉得定时器就2个参数,第一个是个function函数第二个是个延时时间,这个是我们平时用的最哆的其实并不是这样的,我拿setTimeout为例来说下:

1.第一个参数函数第二个参数为delay时间

因为 num变量再定时器函数中没有,它会向父级寻找所以num =1;其實我们可以传递参数的

2.第一个参数函数,第二个参数为delay时间第三个参数为传递的参数

因为我往定时器函数中传递了参数,所以打印出來的值是我传递的参数值其实第一个参数可以不是函数,可以是字符串

2.第一个参数字符串,第二个参数为delay时间(使用该语法是不推荐嘚, 原因和使用 eval()一样有安全风险)

其实它是能解析字符串,包括字符串函数这里不能叫函数,只是写法有点区别

我要回帖

更多关于 返回值类型有哪些 的文章

 

随机推荐