Poprawność kodu javascript

0

Moje pytanie jest takie: co w tym kodzie jest nie tak? Chodzi o to, że musi być jakiś błąd, bo nie ma efektu na stronie. Na stronie powinna pojawić się jakaś liczba, a nie pojawia się nic.

<script type="text/javascript">
myObject.double = function () {
var add(a,b){ return a + b;};

var value=4;
			var that = this; // obejście problemu
			var helper = function () {
			that.value = add(that.value, that.value);
			
			};
		helper();
};
myObject.double();
document.writeln(myObject.value);
</script>

dodanie znacznika <code class="javascript"> - fp

0
finito napisał(a):
var add(a,b){ return a + b;};

co to ma być?
druga rzecz to czy myObject jest zdefiniowany?

0

Ech...co to ma być...po prostu próbuje analizować przykładowy kod z mocnych stron. Być może trochę przekombinowałem. Właściwie oryginalnie kod wyglądał jak niżej, ale też mi nie działa.

<script type="text/javascript">
       myObject.double =  function () {
       var that =  this;     // obejście problemu

       var helper =  function () {
       that.value =  add(that.value, that.value);
      };
    helper();
};
          // wywołujemy double jako metodę
              myObject.double();
             document.writeln(myObject.value); // 6
</script>

1. dodanie znacznika <code class="javascript"> - fp
2. przeniesienie znaczników <code class="javascript"> we właściwe miejsce tak, by obejmowały cały kod - fp

0

Jak ja kocham ksiażki do www, a mocne strony to ponoć pozycja obowiązkowa. Ten kod przepisałem tak jak był i też nie działa. Może ktoś ma pomysł czemu?

<script type="text/javascript">

var Quo = function(string){
		this.status = string;
		};
var Quo.prototype.get_status = function(){
		return this.status;
};
var Qnew = new Quo("zdezorientowany");
document.writeln(Qnew.get_status());
</script>
1
finito napisał(a):

var Quo.prototype.get_status = function(){
		return this.status;
};

wywal var

0

Miło by było też zadeklarować pole status.

0

Dziękować;-) Tzn. ten drugi kod zadziałał. Znaczy: mogę wiercić dalej. Tamten poprzedni za chwilę jeszcze przebadam.

0

Okej, sprawa kolejna:
Jeżeli mam powiedziane, że mam zrobić "rozszerzenie obiektu K", to czy to znaczy, że przed zadeklarowaniem tego rozszerzenia, muszę również zadeklarować sam obiekt K?
Innymi słowy: czy wystarczy deklaracja?

var K.rozszerzenie = { parametry};

czy jednak obowiązkowo trzeba zrobić?:

var K = { parametry };
var K.roszerzenie = { parametry } 

Chodzi mi o to czy to rozszerzenie muszę zawsze zadeklarować osobno?

1

Co przeszkadza Ci sprawdzić to samodzielnie?
Jeśli nie zadeklarujesz wcześniej zmiennej lub nie nadasz jej wartości, to ma wartość undefined. Czy undefined ma pole rozszerzenie?

BTW wszędzie bezmyślnie dodajesz var. Używa się go tylko przy deklarowaniu nowych zmiennych. Tylko. Usuń ten drugi var z drugiego przykładu.

0

Okej, działa i tamto pierwsze. Znaczy doszedłem. Dziękować;-)

1 użytkowników online, w tym zalogowanych: 0, gości: 1