Stack Overflow is a community of 4.7 million programmers, just like you, helping each other.

Join them; it only takes a minute:

Sign up
Join the Stack Overflow community to:
  1. Ask programming questions
  2. Answer and help your peers
  3. Get recognized for your expertise

Please help me, I have angularJS code like this :

.state('masterpegawai.alltalenta', {
            url: '/alltalenta',
            templateUrl: 'public/js/partial-masterpegawai-alltalenta.html',
            controller:function($scope,$http,$interval){
                    $http.get('http://10.16.107.77:3000/allhistorytalenta').success(function(data){

                        $scope.listtalentapegawai=data;

                    });
            }
        })

That produce JSON like this :

[{
    "nip": "6080022A",
    "nama": "ASLAN PURNAMA",
    "semester1_2012": null,
    "semester2_2012": null,
    "semester1_2013": null,
    "semester2_2013": null,
    "semester1_2014": null,
    "semester2_2014": "Potensial",
    "semester1_2015": null
}, {
    "nip": "6080022A",
    "nama": "ASLAN PURNAMA",
    "semester1_2012": null,
    "semester2_2012": null,
    "semester1_2013": null,
    "semester2_2013": null,
    "semester1_2014": null,
    "semester2_2014": null,
    "semester1_2015": "Potensial"
}, {
    "nip": "6080038A",
    "nama": "SYAIFUL ANWAR",
    "semester1_2012": null,
    "semester2_2012": null,
    "semester1_2013": null,
    "semester2_2013": null,
    "semester1_2014": null,
    "semester2_2014": "Potensial",
    "semester1_2015": null
}, {
    "nip": "6080038A",
    "nama": "SYAIFUL ANWAR",
    "semester1_2012": null,
    "semester2_2012": null,
    "semester1_2013": null,
    "semester2_2013": null,
    "semester1_2014": null,
    "semester2_2014": null,
    "semester1_2015": "Potensial"
}, {
    "nip": "6080048A",
    "nama": "NURHAYATI",
    "semester1_2012": null,
    "semester2_2012": null,
    "semester1_2013": "Potensial",
    "semester2_2013": null,
    "semester1_2014": null,
    "semester2_2014": null,
    "semester1_2015": null
}]

I Would like to count the array key and my final result should be 9

because each array contain 9 keys

"nip",
"nama",
"semester1_2012",
"semester2_2012",
"semester1_2013",
"semester2_2013",
"semester1_2014",
"semester2_2014",
"semester1_2015"

I am new to AngularJS and have try length method but the result always greater than 9 because it counts the entire JSON

share|improve this question
    
Have you tried the object.keys function ? – Alvaro Joao 15 hours ago
    
Just posted an answer. Please check out. – Alvaro Joao 15 hours ago
    
Uppsss my fault, forgot to put [0], It works.. Thank You very much Alvaro – Arief Grando 15 hours ago
up vote 4 down vote accepted

You can use the function Object.keys

var length = 0;    

Object.keys(o).forEach(function(key) {
              var val = o[key];
             length = length + 1;

    });

Where o is any object.

In your case o should be any object of the array $scope.listtalentapegawai .

If you only want the Length you can do just like:

var length = Object.keys(o).length;

EDIT: your examples

.state('masterpegawai.alltalenta', {
            url: '/alltalenta',
            templateUrl: 'public/js/partial-masterpegawai-alltalenta.html',
            controller:function($scope,$http,$interval){
                    $http.get('http://10.16.107.77:3000/allhistorytalenta').success(function(data){

                        $scope.listtalentapegawai=data;

         var length = Object.keys($scope.listtalentapegawai[0]).length; // will be 9


                    });
            }
        })
share|improve this answer
    
Hi, Alvaro it return : 3610 not 9 – Arief Grando 15 hours ago
    
You can just use this. var length = Object.keys(o).length; – Alvaro Joao 15 hours ago
    
Did it works for you? – Alvaro Joao 15 hours ago
    
Still return greater than 9, I am expecting the result is 9 because every array have 9 keys – Arief Grando 15 hours ago
1  
Uppsss my fault, forgot to put [0], It works.. Thank You very much Alvaro – Arief Grando 15 hours ago

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.