翻译 - Unity的Javascript基本函数
伊谢尔伦
伊谢尔伦 2017-04-10 13:11:05
[JavaScript讨论组]

我有个基本的问题。我在学习使用Javascript函数,我学到使用某些东西创建函数,例如:

function Example(text)
{
    print(text);
}

然后调用它,使用:

Example();

你可以插入字符串或者在在代码最后部分的括号里插入数字,它将传递并把自己插入到你先前创建的函数里。在这种情况下,它将停止输入我所键入到括号内的任何东西。
现在,我的问题是,如果那样做有效,为什么不在我传递两个数字的地方运行,让它们加入工作?我使用的代码是这样的:

Addition(4, 4);
function Addition(a, b)
{
    print(a+b);
}

当我执行这个的时候,Unity告诉我:

Operator '+' cannot be used with a left hand side of type 'Object' and a right hand side of type 'Object'.

我看了这个视频,关于Javascript函数的,大概在第9分钟,视频里的人准确的输入了那个, 并获取脚本为他添加。我是个编程新手,我不知道我错在什么地方,先谢谢大家。

原问题:Basic Functions in Javascript

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(1)
怪我咯

来自@Joetjah 的回答:

实际上, 在Unity里代码应该是这个样子的:

Addition(4, 4);
function Addition(a:int, b:int)
{
    print(a+b);
}

你得调用函数参数中你期望的参数类型。你在JavaScript中那样陈述是正确的,这通常是不需要的。在Unity中虽然也是。
这是因为它实际上称为UnityScript。之所以叫UnityScript,是因为使用者想要指出Unity的Javascript 与用于浏览器的传统Javascript是大有区别的。
我发现了一个列表,详细展示了UnityScript和Javascript的不同点击here.
当我在那个网页之外创建快速符号列表,我能告诉你区别在哪里(可能不太全面):

  • JavaScript 是 class-free的
  • JavaScript支持在一个var语句多个声明变量
  • 在JavaScript里, 分配被视为一种表达
  • JavaScript中的每一个顶级变量都是全局性的 。此外,任何前面没有var语句的变量声明都是全局性的。
  • Javascript, 动态输入是有效的
  • JavaScript中, 私有是相当非传统的
  • 美元符号($) 在UnityScript标识符中是不允许的,因为它们是Javascript的。
  • UnityScript中没有声明
  • Javascript 支持正则表达式字面量(RegExp或者regex)。
  • 在JavaScript中, 这个可以参考以下两种情况, 根据文本:
  1. 全局对象(这里最好不解释了)
  2. 当前方法或构造函数所述的对象

StackOverflow has this to say about it:
Unity's JavaScript试图紧跟ECMAScript标准,它在许多方面与基于同一标准的JavaScript的其他实现有所变化。或许与Microsoft's Jscript最为相似,尤其是两者都是.NET语言。然而,Unity的版本是独立开发的,有许多两者之间的差异

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号