js这一行看不懂,谁能解释下,在ie8下出错了,但ff没问题

dongweizi 2010-11-10 03:51:03
问题背景:游戏river iq的js实现中,有下面这一行,我不懂是什么意思,在ie8中提示如下错误

消息: 缺少 ':'
行: 432
字符: 9
代码: 0
URI: ...scripts/script.js

出问题所在行的代码(就是get passangers ()):
/**
* @requires Hero
*/
game.raft =
{
/**
* Heroes who are on the raft
* @return {Array}
*/
get passangers () //ie8提示这里出错,少":",不明白这一行是什么意思?有什么用,为什么ie8下会出错?
{
return game.heroes.filter(function (hero)
{
return hero.location() === game.places.RAFT;
});
},
/**
* Initializes location and isMoving getter/setter (false)
* @return self
*/
init : function (place)
{
synthetize(this, 'isMoving', false);
this.location(place);
return this;
},
....
}

我不明白 get passangers () 这一行是什么意思?有什么用,为什么ie8下会出错?
请各位大侠赐请,谢先!
搬板凳等...
...全文
56 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
dongweizi 2010-12-23
  • 打赏
  • 举报
回复
已在blueidea中找到答案,现结贴
dongweizi 2010-11-12
  • 打赏
  • 举报
回复
那样试了过,虽然编译通过,但功能就完全错了,代码中好象就是直接调用的passangers,而不是get passangers,怀疑get是不是一个关键字什么的哈,到底怎么回事哈?不懂,继续请教...
eg:
//game的定义为一个数组
var game = {};
game.places =
{
RAFT : 1, LEFT_SHORE : 2, RIGHT_SHORE : 3
};
game.heroes = null;
...
//调用passangers的地方
var travelConflict = Hero.checkForConflict(raft.passangers);//直接调用passangers.此行代码属于game.controller = (function (){...})();中的一部分
//passanger在game.raft的属性中,
game.raft =
{
/**
* Heroes who are on the raft
* @return {Array}
*/
get passangers ()
{
return game.heroes.filter(function (hero)
{
return hero.location() === game.places.RAFT;
});
},
/**
* Initializes location and isMoving getter/setter (false)
* @return self
*/
init : function (place)
{
synthetize(this, 'isMoving', false);
this.location(place);
return this;
},
/**
* Is there someone on the raft who can steer it
* @type Boolean
*/
steererAtRaft : function ()
{
var passangers = this.passangers;
var len = passangers.length;
if (len === 0)
return false;
for (var i = 0; i < len; ++i)
{
if (passangers[i].canSteer())
return true;
}
return false ;
},
this.moveHeroes(raft.passangers)//raft是game的一个属性,
yql1986 2010-11-11
  • 打赏
  • 举报
回复
] 没有用
yql1986 2010-11-11
  • 打赏
  • 举报
回复
javascript 基本语法

get passangers ()
{
//do some thing here...
},

getPassangers:function()
{
//do some thing here...
},
]

dongweizi 2010-11-10
  • 打赏
  • 举报
回复
另注:
在get passangers ()的get与passangers之间加上":"号或把中间的空格去掉分别会提示
missing } after property list和missing : after property id错误

3,423

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧