Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Работа с массивом (https://javascript.ru/forum/misc/25392-rabota-s-massivom.html)

Octane 04.02.2012 07:19

Цитата:

Сообщение от devote
Читай посты внимательнее, в ИЕ 7 свойство length является перечисляемым...

У тебя бракованный IE7


Цитата:

Сообщение от devote
Я даю примеры решений, которые работают во всех браузерах без исключения, и не пытаюсь дать человеку то после чего он прибежит снова на форум с воплями "а какого йуха не работает в ИЕ"

По твоему всякие indexOf и forEach для массивов тоже забыть?)

devote 04.02.2012 07:32

Цитата:

Сообщение от Octane
У тебя бракованный IE7

возможно и бракованный.
Цитата:

Сообщение от Octane
По твоему всякие indexOf и forEach для массивов тоже забыть?)

а причем тут это вообще? Вы тему топика читали?

Человеку нужно посчитать количество реальных элементов. Ему дано решение, которое работает везде. Не понимаю что вам все никак не успокоиться. Я рад что вы стараетесь юзать там супер пупер новые возможности и т.д. но ради мелочной порой задачи, прикручивать либу ради мелких задач не всегда необходимо.

Octane 04.02.2012 07:40

Цитата:

Сообщение от devote
а причем тут это вообще? Вы тему топика читали?

Цитата:

Сообщение от devote
Я рад что вы стараетесь юзать там супер пупер новые возможности и т.д. но ради мелочной порой задачи, прикручивать либу ради мелких задач не всегда необходимо.

При том что приходится для этих методов дополнительный код в IE подключать, поэтому Object.keys еще добавить не проблема.

Цитата:

Сообщение от devote
Человеку нужно посчитать количество реальных элементов.

Object.keys(array).length тоже является решением этой задачи.

Цитата:

Сообщение от devote
Не понимаю что вам все никак не успокоиться.

Просто общаемся

devote 04.02.2012 08:11

Цитата:

Сообщение от Octane
Object.keys(array).length тоже является решением этой задачи.

никто не спорит... яж не отрицал этого нигде...

strengerst 04.02.2012 14:40

Спасибо за вашу помощь и отзывчмвость. Всем спасибо что откликнулись.:thanks: .

Octane 04.02.2012 16:24

Цитата:

Сообщение от Maxmaxmaximus
Array.prototype.count = function(){
	var l = 0;
	Object.keys(this).forEach(function(a){ +a == a && l++ })
	return l
}

Array.prototype.count = function () {
	return Object.keys(this).filter(isFinite).length;
};
;)

Octane 04.02.2012 16:29

https://developer.mozilla.org/en/Jav.../Array#Methods

Kolyaj 04.02.2012 16:33

Вообще-то зря вы тут про Object.keys вспомнили, он не про массивы.

Array.prototype.count = function() {
    return this.reduce(function(x) { return x + 1; }, 0);
};


Часовой пояс GMT +3, время: 01:17.