2 asambojur asambojur 于 2014.10.22 19:37 提问

Javascript的对象引用问题。

function GiveMovieTime() {
var property;

for (property in Movie) {
    if (property == "Time") {
        alert("on " + Movie.Time[TimeLength]);
    }

    else {
        alert(Movie[propety]);
    }
}

}

就是这个代码,是for循环语句有问题吗? 在调用的时候没有反应啊。

定义的对象是:
var Movie = {
name: "Star",
type: "Tech",
level: 5,
Time:["1:00pm","2:00pm","3:00pm"]
}
var TimeLength = Movie.Time.length;

3个回答

Easy2HJ
Easy2HJ   2014.10.22 22:38

for 怕是不能这样写吧?

u013104499
u013104499   2014.10.26 12:13

for (var property in Movie) {// * 这里少了一个var *

if (property == "Time") {//这句话是为了检索到property=time的value值,即
//["1:00pm","2:00pm","3:00pm"]

alert("on " + Movie.Time[TimeLength]);
}

else {
    alert(Movie[propety]);
}

}
//////////////

var TimeLength = Movie.Time.length;也不是这样子定义的
应该是:var TimeLength = Movie[Time].length;

showbo
showbo   Ds   Rxr 2014.11.18 16:39
for (property in Movie) {
    if (property == "Time") {
        alert("on " + Movie.Time[TimeLength-1]);//这里也有问题。。数组下标是从0开始的
    }

    else {
        alert(Movie[property]);//这里变量名报错了。。少了r
    }
}
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!