数组:如何在数组中分配对象

时间:2016-09-27 09:55:02

标签: jquery arrays

例如我有一个像下面这样的功能

        var testName= "";
        testName= $('.test').map(function() {
                    // get text 
                       return $(this).text()
                      // get result as array
                }).get();

            var testResult= {
                name:testName,
            };


        console.log(testResult);

我可以从我的代码中看到的结果是

enter image description here

这不是我想要的东西。

我想拆分这些数据并逐一分配

"testResult": [
 {
   "name": "test1"
 },
 {
   "name": "Thug life"
 }
]

我厌倦了使用for循环来处理这些数据,但它没有帮助

for(var i; i < testName.length; i++){
                var testName= testName + [{
                    name:testName[i],
                }];
            }

1 个答案:

答案 0 :(得分:1)

如果您希望将它们分组到结果中,请在map中返回一个组。

var testResult = $('.test').map(function() {
    return {name: $(this).text()};
}).get();

console.log(testResult);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="test">test1</div>
<div class="test">test2</div>
<div class="test">test3</div>

或者采用您的格式:

var resultObject = {
    testResult: $('.test').map(function() {
        return {name: $(this).text()};
    }).get()
};

console.log(resultObject);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="test">test1</div>
<div class="test">test2</div>
<div class="test">test3</div>