首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >让智能感知对jquery each()回调中的对象起作用

让智能感知对jquery each()回调中的对象起作用
EN

Stack Overflow用户
提问于 2015-05-24 21:46:28
回答 1查看 80关注 0票数 0

在VS2015中(我也相信在2013年),我如何让智能感知来识别jquery回调中的对象?在下面的代码(‘测试’函数)中,在非jquery循环中,智能感知知道'person‘是什么,但$.each()回调不知道。

代码语言:javascript
复制
var Person = (function () {
    "use strict";
    var person = function (name, age) {
        this.name = name;
        this.age = age;
    };
    return person;
}());
var People = (function () {
    "use strict";
    var people = function (lang) {
        this.language = lang;
        this.population = [];
    };
    return people;
}());
var test = (function () {
    "use strict";
    var i, person, people = new People('English');
    people.population.push(new Person('joe', 30));
    people.population.push(new Person('jane', 31));

    // method1 : intellisense works - knows what a 'person' is.
    for (i = 0; i < people.population.length; i++) {
        person = people.population[i];
        person.age++;
    }
    // method2 : intellisense does not work
    $.each(people.population, function (index, person) {
        person.age++;
    });
    person = people.population[0];
    alert(person.name + "'s age is now" + person.age);
 }());
EN

回答 1

Stack Overflow用户

发布于 2015-06-12 00:29:06

使用javascript array.forEach()方法,而不是jquery each(),确实允许智能感知理解数组元素。

代码语言:javascript
复制
people.population.forEach(function (person) {
    person.age += 1;
});

但这两种方法似乎都比基本的' for‘循环慢得多,所以对于大型数组,我将坚持使用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30424227

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档