佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 2515|回复: 4

[教程一]变量 - 数字与文字

[复制链接]
发表于 13-2-2005 02:35 AM | 显示全部楼层 |阅读模式
作者:Super-Tomato

    由于之前的教程对完全不会的朋友来说也许是一步登天,接下来我都会从基础开始写起,所以有心学习的朋友就留意吧。但学习Actionscript来说最重要的是自己亲手跟着做+思考+变通+耐力,缺乏任何一种都只能算是纸上谈兵。

    如果之前学习过任何语言的朋友,这对他们来说很容易就上手,尤其是学习JAVA。每篇教程还是省不了一点开场白,那么我们就开始第一课的变量



      Flash和其他电脑语言一样的,Flash都有自己的资料形态,但它没有像C++或Java那么严谨,是属于松散资料型别。类型很像Javascript,但功能会比Javascript来得多。在Actionscript开始使用的时候必须定义变量,但某些变量不必特别宣告形态。即我们给于什么值该变量就为什么形态。也就是因为有了这些变量和形态才能成立一个语言。在Flash的资料形态不会像其他语言那么复杂,而且也没有指针的定义。最简单的变量可以分成以下几种形态:





1。数字与文字

        var Num = 10;  //变量Num的值为数字,那么变量的形态就为数字
        var Str = “文字”;  //相反的变量 Str 的值是文字,那么变量形态就自动为文字


      那么 Var Num = “10”; 是什么形态呢?对于完全没有编程基础的朋友可能会说是数字吧。所谓的文字就是代表内容处于 “ ” 之中。而刚刚这行代码的10是处于双引号之中就代表变量形态是文字了。而每行代码结束之后最好写上一个分号 ; 以减少不必要的错误。

      变量名可以依照自己容易记得的文字来定义,但是最好不要使用以“数字”开头或一些保留的字,如:var, while, for, in, if, switch等。解决的方法就是使用匈牙利标记法,例如在数字变量名前面加个n,变成nNum。那么就不会有任何错误了。

      定义变量的范围也有几种,在这里也要提醒大家的
      nNum = 10;
      var nNum = 10;
      _global nNum = 10


      第一种和第二种方法是最普遍使用的,其范围只能在该场景中使用,但是其他场景无法取得。如果想要变量能够被其他场景取得其值和改变的话就要把变量定义为全域性(_global),当然在没有多个场景或必要时就不用特别去定义为全域性了。在这里建议大家多使用第二种定义方法。

      再来就是说说文字和数字变量形态的转换了,在什么情况下会转换呢?就是当文字和数字相加的时候。在Actionscript中,只要任何文字相加起来都会变成文字,那么我们现在就正式开始来学习Actionscript吧,打开第一新的文件。在第一桢(Frame)按下F9,打开动作面板输入以下代码:



      记得看清楚红色框的部分,确定你现在是选择第一桢。然后按CTRL+ENTER测试影片。你会得到的结果是




      这样就可以简单的出现答案了吧,那么我还是从刚才的代码开始解释吧,不然那些新手会马上把网页关掉睡觉的。

Var nNum = 10;  //这里我们在前面已经说了,是定一个变量叫nNum,用来储存数字10的
var sStr = "Number is ";  //同上定义一个变量叫sStr,用来储存文字sStr += nNum;这句就要解释一下,+= 就是 sStr = sStr + nNum 的缩写方法,也就是我们所要说的重点sStr(文字) + nNum(数字)
trace(sStr);  //这里我们就用上了追踪数据的指令trace(),在这之前已经说过这个可以把追踪得到的数据显示在输出面板了,所以sStr的文字就是 Number is 10
trace(typeof sStr);  //这里我们又用上了一个指令,就是typeof 从字面上就可以知道是种类的意思,也就是我们检查sStr的数据形态是否是为我说的文字形态。






      那么我们要怎么把文字转换成数字呢?转换文字为数字的指令是Number(变量),这个指令必须满足一个条件,就是文字内必须是数字,包含文字的话就会出现错误,那么来试试看吧:



      这样测试的话得到的结果是什么呢?? 当然你会看到输出面板的答案是NAN, 再来我们是用正确的写法试试看:



      这样测试是不是得到的答案是15了呢?




  


这篇基础的文字与数字都大致介绍完了,但是文字String和数字Number还有一些属性可以使用。大家可以去参考帮助文档,当中有介绍了这些属性的使用。

关于这篇要是大家有不懂的地方请踊跃提出


[ Last edited by super-tomato on 13-2-2005 at 02:41 AM ]
回复

使用道具 举报


ADVERTISEMENT

weiny06 该用户已被删除
发表于 28-1-2007 12:41 AM | 显示全部楼层

回复 #1 super-tomato 的帖子



字体太小,看不懂呢!
回复

使用道具 举报

发表于 2-2-2007 12:50 PM | 显示全部楼层
flash action script 2 也是一种物件导向(Object Oriented)的语言。不过有一点不同的是它的物件导向是不完整的,例如 class 里面没有 protect 这个字眼。另外,它还有 static 静态宣告的变量的前缀。
回复

使用道具 举报

发表于 17-5-2009 02:05 PM | 显示全部楼层
请问那AS3.0是否不一样的?因这里有些教学的AS都用不到。。。
我用的是Flash CS4。。。。
回复

使用道具 举报

发表于 18-5-2009 11:35 AM | 显示全部楼层

回复 4# 天海冥 的帖子

AS3.0 和 AS2.0 不太一样和AS3.0 比 AS2.0 还的多, 建议学AS3.0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 26-5-2024 08:42 AM , Processed in 0.073368 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表