说我有一个如下对象:
var myObj = {FOO: 0, BAR: 1};
如何获取其中一个键的字符串值?
如果我这样做:
console.log(myObj.FOO);
它将打印0
,而我想打印'FOO'
。
如何实现这一目标?
答案 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"