javascript 如何创建数组时定义类型

比如我已创建的时候就指定类型为GameObject型大家声明的时候都不声明类型,都用var,怎么可以声明的时候声明类型?如果不行,那怎么让里面的元素魏GameObject... 比如我已创建的时候就指定类型为GameObject型
大家声明的时候都不声明类型,都用var,怎么可以声明的时候声明类型?
如果不行,那怎么让里面的元素魏GameObject型?怎么转换???急
展开
 我来答
网海1书生
科技发烧友

2013-11-17 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26226

向TA提问 私信TA
展开全部
脚本都是弱类型语言,就是说变量声明的时候是不能显式指定类型的,在赋值的时候再根据值的实际类型来决定变量的类型。比如var a,这时候a的类型是一种特殊的类型,叫undefined,然后当你a=123,它立刻就变为number型了,a="123",则变为string型。当然实际应用中声明和赋值可以合在一起:var a=123
要想让变量成为对象变量,就应该让它实例化,或者在声明的时候给它赋值一个空对象:
var a={};

弱类型语言的另一种通俗的理解方式就是:它本身是只支持一种数据类型的,就是一种万金油式的、可以兼容任何形式的数据值的“不定型数据类型”,然后在实际应用中再根据它所赋的值来决定变量的实际类型,这时候的类型则属于子类型,子类型之间是可以互相转换的。
百度网友4f3fc44
2013-11-17 · TA获得超过3003个赞
知道小有建树答主
回答量:659
采纳率:50%
帮助的人:350万
展开全部

1. JavaScript(ECMAScript)是弱类型语言,也就是说,定义变量时,不需要声明一个变量的类型,变量类型由其实际值决定。因此,在通常情况下,不需要为变量指定类型,除了使用 var 定义变量外,也不可以使用其他关键字来限制变量类型(有的 ECMAScript 变体语言实现了强类型化,比如 ActionScript,但暂时还没有在 JavaScript 中推广)。比如下面的例子:

var sth; //typeof sth: undefined
sth=1; //typeof sth: number
sth="s"; //typeof sth: string
sth={}; //typeof sth: object
typeof sth; //使用 typeof 运算符检测类型

虽然脚本解释器不会限制变量类型,但是在实际应用中,我们还是人为的让一个变量始终保持一种类型,这是一个良好的习惯。


2. JavaScript 中一切都是对象,没有高级语言(如 C++、Java)中所谓“类”的概念。不过,我们可以让 JavaScript 模拟“类”的操作,如定义类、创建类的对象(实例)、实现继承等等,这方面内容很多,这里只简单说明一下。下面举一个例子,使用最基本的构造函数来创建“类”。

function GameObject(name){ //构造函数
    this.name=name; //属性
    this.getName=function(){ //行为
       return this.name;
    }
}
var game=new GameObject("Bingo"); //创建对象(实例)
var gameName=game.getName(); //gameName="Bingo"
//可以使用 instanceof 运算符检查原型和实例(或着称“类”和“对象”)是否配对。
var checkClass=(game instanceof GameObject); //checkClass=true


3. 现在完全可以解决你的问题了,直接把创建的对象赋值给数组元素即可。例如:

var games=new Array();
games[1]=new GameObject("WOW");
games[2]=new GameObject("LOL");
games[3]=new GameObject("DBL");
//...
var gameName1=games[1].getName(); //gameName1="WOW"
var checkClass2=games[2] instanceof GameObject;  //checkClass2=true
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
搭伴网Leader
2013-11-17 · TA获得超过316个赞
知道小有建树答主
回答量:932
采纳率:0%
帮助的人:626万
展开全部
类型不用声明的,javascript是弱类型语言;
追问
什么叫弱类型语言?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kkeo
2013-11-17 · 超过25用户采纳过TA的回答
知道答主
回答量:76
采纳率:0%
帮助的人:69万
展开全部
用 is type of 或者is instance of 来检测下吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式