0

独自のインデックスを持つ配列またはオブジェクトを生成するにはどうすればよいですか?

PHPで私はできます:

$array = array();

foreach($users as $user){
   $array[$user] = $user;
} 

とjQueryで?

var arr = new Array();
$('input').each(function(){
   arr[$(this).val()] = $(this).val();
})

これにはJSObjectを使用したいのですが、どうすればよいですか?

4

5 に答える 5

6
var arr = {};
$('input').each(function(){
    ...

必要なのはそれだけです。JavaScriptでは、配列(new Array()または[])には連続したインデックスがあり、オブジェクト(new Object()または{})には任意のプロパティがあります。

于 2012-08-07T12:27:42.390 に答える
2

これは元々の配列では不可能ですが、JSオブジェクトでそれを実現する方法があります

var person = { country: 'Pakistan' };

これがオブジェクトであり、Uはこれらのステートメントが両方とも同じ結果をもたらすことを確認します。

alert( person.country );
alert( person['country'] );

これは、実際にはオブジェクトであることを意味しますが、配列のようにも機能します。

于 2012-08-07T12:50:40.107 に答える
1

配列の代わりにオブジェクトを使用するだけです。

var obj = {};
$('input').each(function() {
    obj[$(this).val()] = $(this).val();
})
于 2012-08-07T12:27:52.287 に答える
1
var obj = {};
$('input').each(function(){
   obj[$(this).val()] = $(this).val();
});

基本的にこれは簡単です。obj[value]この後、またはでアクセスできますobj.value

于 2012-08-07T12:28:19.877 に答える
1

配列の代わりにオブジェクトを使用する

var arr = {};
于 2012-08-07T12:28:32.203 に答える