请问一下在js里面下面在串代码,定时器为什么,我没有申明一个变量就可以 obj.timer=赋值呢?

在JavaScript函数中啊,函数有形参和实参数,形参就是function Book( obj ){}小括号里面的,表示是你在调用这个函数传进去的值,你在外面调用的时候,传的是什么就是什么!
var 是声明一个变量,只要是声明一个变量都需要使用到var,= 等于是赋值的过程,将右边的表达式赋值给左边的变量,可见变量是一个可变的量嘛!

追问

那为什么上面的定时器,它不需要声明一个空变量, 就直接obj.名字=赋值呢,而下面在个定时器为什么它就需要先声明一个var timer=null变量在赋值?请问一下在俩个的区别,为什么在么做呢?希望您指点一下谢谢!

追答

1

2

3

4

5

6

扫描二维码关注公众号,回复: 4606945 查看本文章

7

8

unction startMove(obj, iTarget){

    clearInterval(obj.timer);

    obj.timer=setInterval(function(){

        var iSpeed=(iTarget-obj.alpha)/8;

        iSpeed=iSpeed>0?Math.ceil(iSpeed):Math.floor(iSpeed);   

        if(obj.alpha==iTarget){

            clearInterval(obj.timer)

        };

这个是你的源代码,clearInterval(obj.timer),是一个清除定时器,obj.timer是一个自定义属性了,意思就是给obj添加了一个功能,obj这个参数是需要从外部传!

你下面那个是声明一个变量,肯定会用到var,但是用不用到null就看自己的想法和思路了,

来源:https://zhidao.baidu.com/question/921705125806418259.html

猜你喜欢

转载自blog.csdn.net/qq_42058441/article/details/84674002