Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 13 Next capture
2021 2022 2023
1 capture
13 Jun 22 - 13 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Innavoig · Mar 17, 2015 at 03:58 PM · javascriptarraybeginnerbasicsyntax

Basic javascript array declaration

I'm a beginner and i'm confused on how to use array in javascript. The program is very simple. Just use mouse left click and it will add up an integer value the handphone.clock variable.

Here's my code:

 #pragma strict
 var handphone : sony[];
 var n = -1;
 
 function Start () {
  handphone = new sony[1000];
 }
 
 function Update () {
     
         if(Input.GetMouseButtonDown(0)){
         n++;
         handphone[n].clock = (n+1);
         Debug.Log(handphone[n].clock);    
             
         }
 }
 
 class sony{
     var clock = 10;
 }

Currently i have to write the array capacity at the "start function",if it's empty, it will return a syntax error. Is there anyway declaring it without stating the maximum index? (keep on adding index everytime i click).

Also, what is the difference between "n++" and "(n+1)". When i change the "(n+1)" into "n++" in the "handphone[n].clock = (n+1)", it will only run once ( left click once, returning a value of 10 and the next click wont return anything).

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by Dheen Doha · Mar 17, 2015 at 09:01 PM

http://docs.unity3d.com/es/current/ScriptReference/Array.html pls have a look..

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
1

Answer by AcE_fLoOdEr · Mar 17, 2015 at 08:11 PM

So basically you want to dynamically create new Array elements, every time you click? If that's the case, you can do this

 #pragma strict
 
 var handphone : sony[];
  var n = -1;
  
  function Start () {
  }
  
  function Update () 
  {
    if(Input.GetMouseButtonDown(0))
    {
             handphone = new sony[handphone.Length + 1];
            n++;
            handphone[n].clock = (n+1);
            Debug.Log(handphone.Length);
    }
  }

just to create new elements on clicks.

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Innavoig · Mar 18, 2015 at 01:58 PM 0
Share

I tried your code and it return an error: "Object reference not set to an instance of an object". Seems like still have to declare the array first at the Start Function. But, your tips on the "handphone.Length" saves the day. Thank you! This one works fine with me:

 #pragma strict
 var handphone : sony[];
 var n = -1;
 
 function Start () {
  handphone = new sony[1];
 }
 
 function Update () {
     
         if(Input.Get$$anonymous$$ouseButtonDown(0)){
         
         n++;
         handphone[n].clock = n;
         Debug.Log(handphone[n].clock);    
         Debug.Log("Total index is " + handphone.Length);
         handphone = new sony[handphone.Length + 1];
             
         }
 }
 
 class sony{
     var clock = 10;
 }


Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

4 People are following this question.

avatar image avatar image avatar image avatar image

Related Questions

Need help with OnTriggerEnter 3 Answers

JavaScript Syntax and Punctuation Meanings Question 1 Answer

Calling random functions 4 Answers

Music repeats when going back to mainmenu/scene 0 0 Answers

Trying to Sort a Multi Dimensional Array 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges