Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите с ооп (https://javascript.ru/forum/misc/33293-pomogite-s-oop.html)

Zim_one 17.11.2012 21:12

Помогите с ооп
 
Здравствуйте, не могу понять ООП никак. Если не трудно, напишите эту функцию в ООП, может мне так будет понятнее.
window.onload=function aa(){
    for(var i=0; i<document.links.length; i++){
        if(document.links[i].href=="http://www.droider.ru/"){
            alert(i);
            break;
        }
    }
	alert (i);
}

dmitriymar 17.11.2012 21:17

Цитата:

Сообщение от Zim_one
Здравствуйте, не могу понять ООП никак. Если не трудно, напишите эту функцию в ООП, может мне так будет понятнее.

чего?:blink:

Zim_one 17.11.2012 21:23

как через ооп сделать функцию?
var aa = function{...
}
так? или эта моя функция это не обьект а свойство? Не понятно мне. Может я вообще ересь несу? Как мне реализовать этот функционал через обьекты?

dmitriymar 17.11.2012 21:38

Цитата:

Сообщение от Zim_one
Может я вообще ересь несу?

именно так и есть.
функция это функция она точно не объект и не свойство.
а заодно может быть и свойством чегото -зависит от реализации языка
Цитата:

Сообщение от Zim_one
как через ооп сделать функцию?

учебник на сайте языка есть -читать с начала. а лучше начать с основ алгоритмов

dmitriymar 17.11.2012 21:49

Цитата:

Сообщение от iMaxmaxmaximus
window.onload= new Cat;
02
03
04 function Cat(){
05
06 return function (){
07 for(var i=0; i<document.links.length; i++){
08 if(document.links[i].href=="http://www.droider.ru/"){
09 alert(i);
10 break;
11 }
12 }
13 alert (i);
14 }
15
16 }

:blink:
function f(){
	
	return function(){alert(1)};
}
var d=new f();
alert(typeof d)
d();


function f(){
	
	return (function(){ alert(1);return;})();
}
var d=new f();
alert(typeof d)

function f(){

	alert(1)
}
var d=new f();
alert(typeof d)

dmitriymar 17.11.2012 22:09

Цитата:

Сообщение от iMaxmaxmaximus
ты не реализовал его функцию с помощью ооп)

дак ты тоже -первый пример аналог твоего кода.
есть чёткие правила, что будет в итоге в зависимости от того ,что возвращает конструктор
у тебя каррирование , и то нужно исправить:
Цитата:

Сообщение от iMaxmaxmaximus
window.onload = new Cat;

на window.onload = new Cat()

dmitriymar 17.11.2012 22:21

Цитата:

Сообщение от iMaxmaxmaximus
ооп в javascript идет с помощью констуркторов

если не секрет -чего ты сконструировал?
нет, я конечно понимаю что функция это тоже объект . но объясни разницу между
function f(){
	this.a=10;
	return function(){alert(1)};
}
var d=new f();
alert(typeof d)
d();
alert(d.a);
alert(a);

function f(){
	this.a=10;
	return function(){alert(1)};
}
var d=f();
alert(typeof d)
d();
alert(d.a);
alert(a)

nerv_ 18.11.2012 00:02

Цитата:

Сообщение от iMaxmaxmaximus
ооп в javascript идет с помощью констуркторов

т.е. Object.create() не ООП?

melky 18.11.2012 00:11

Цитата:

Сообщение от iMaxmaxmaximus
ооп в javascript идет с помощью констуркторов

трактовка решения с использованием ООП идёт не через конструкторы (хоть в JS, хоть в Java), а через создание объектов-сущностей.

Цитата:

Сообщение от nerv_
т.е. Object.create() не ООП?

т.е.
var str = new String("Hello!");

уже ООП :D

Цитата:

Сообщение от iMaxmaxmaximus
для слупков поясню что это шутка

само собой :) я сам не догнал, как можно было привести callback к объекту.


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