检索javascript对象条目的字符串值

时间:2015-08-05 19:44:03

标签: javascript

说我有一个如下对象:

var myObj = {FOO: 0, BAR: 1};

如何获取其中一个键的字符串值?

如果我这样做:

console.log(myObj.FOO);

它将打印0,而我想打印'FOO'

如何实现这一目标?

3 个答案:

答案 0 :(得分:1)

要显示属性名称,可以循环显示它们:

for (name in obj) {
  alert("This is the key: " + name);
  alert("This is the value: " + obj[name]);
}

答案 1 :(得分:1)

您可以使用Object.keys()方法。以下内容返回" FOO":

import java.io.*;
import java.util.*;
class check
{
    public static void main(String arg[])throws Exception
    {
        try
        {
            InputStreamReader in=new InputStreamReader(System.in);
            BufferedReader br=new BufferedReader(in);
            int t=Integer.parseInt(br.readLine());
            String[] input=new String[t];
            int counter=0;
        while(counter<t&&((input[counter]=br.readLine())!=null))
        {
            counter++;
        }
        br.close();
        in.close();
        for(int i=0;i<t;i++)
        {
            StringTokenizer st=new StringTokenizer(input[i]);
            int m=Integer.parseInt(st.nextToken());
            int n=Integer.parseInt(st.nextToken());
            boolean[] prime=new boolean[n+1];
            for(int j=2;j<=n;j++)
            {
                prime[j]=true;
                prime[1]=false;
            }
            for(int j=2;(j*j)<=n;j++)
            {
                for(int k=j;j*k<=n;k++)
                {
                    prime[k*j]=false;
                }
            }
            for(int j=m;j<=n;j++)
            {
                if(prime[j]==true)
                    System.out.println(+j);
            }
            System.out.println();
        }
        }
        catch(Exception e){}



    }

}

有关Object.keys()的更多信息:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys

答案 2 :(得分:0)

您可以通过循环记录对象属性名称。

var myObj = { FOO : 0, BAR : 1 };

for( var propertyName in myObj ) {

    console.log( propertyName );

}

或者您可以使用Object.getOwnPropertyNames在<0索引数组上检索对象属性名称。

var myObj = { FOO : 0, BAR : 1 };

var propertyNames = Object.getOwnPropertyNames( myObj );

console.log( propertyNames[ 0 ] ); //This shold log "FOO"

或者您可以使用Object.keys获得与上述相同的结果。

var myObj = { FOO : 0, BAR : 1 };

var propertyNames = Object.keys( myObj );

console.log( propertyNames[ 0 ] ); //This shold log "FOO"