+ 1
Pls what is (this) key word used for in JavaScript I think it is used for updating the arguments of our function Is it correct
13 Respostas
+ 3
'this' meaning there to 'current object'.
Remaining all are your choice, how to use it, as how you program?
Ex:
console.log(this) ; //to print current object
console.log(this.age) ; //printing age
this.age= 30 //assigning or modifying..
+ 2
"this" refers to the object's properties. It would be helpful if you gave an example code
+ 2
Thank u alot alot!!! U are gud and u provide understanding answers
+ 1
function person (name, age)
{
this. name="A"
this. age =20
this.ChangeName = function (name){
this.name = name
// above last 2 lines :
this.ChangeName here this refers to person function. (So equal to Person.ChangeName)
And
this.name , here this refers to ChangeName ( equal to ChangeName.name)..
It can be used in any object to refer that object.
+ 1
This refers to the properties of the object.
0
OK like
Function person (name, age)
this. name
this. age
this. Change Name = function (name)
this. name = name
let p = name (David, 21)
P. ChangeName ("John")
0
"this" refers to the current object on which now you are refering.. If you use it in function, then this refers to function. On object, refers to object. On window, outside of any function, refers to window .........
edit:
Okere Samuel
in your code, there this refering to function person in 2nd and 3rd line
and in this.name=name, this refers to ChangeName property
0
Buh were is (this) mostly useful and is it only in functions that we can use it?
0
Ok does it mean that the (this) after using it to refer to an object then we can now assign it to a variable in other to make changes to the name?
0
function person (name, age)
{
this.name = name;
//
this. Change Name = function (name)
this.name = name
}
let p = new person(David, 21)
P. ChangeName ("John")
From this code, see
this.name = name; here 2 variables have same named as name. So to refer Person object name, we use this.name and just name variable refers to passed variable. Otherwise name=name is useless, no effect. To distinguish we use 'this' there. First you set name = "David" by person("David", 20) ; and you are going to set changedName as by ChangesName.name = "John";
Hope it helps.
0
Ok does it mean that the (this) after using it to refer to an object then we can now assign it to a variable in other to make changes to the name?
0
And is this(this) only for updating our function arguments
- 1
Functions are kind of weird in javascript. They are somewhat behave like an object, that's why you can call "this" inside a function.
"this" means referring to the current object. You usually use "this" when you want to define properties, functions/methods to that object.
Functions are still functions. The behavior only change when you call "this"
ex:
/** with this */
function add(x, y) {
this.propX = x;
this.propY = y;
return x +y;
}
typeof add; // "function"
const z = add(1,2);
z // "3"
const x = new add(1,2);
x // "Object { propX: 1, propY: 2}"
x.propX // "1"
x.propY // "2"
---------------------------
/** without this */
function add(x, y) { return x +y;}
typeof add; // "function"
const z = add(1, 2);
z // "3"
const x = new add(1, 2);
x // "Object { }"
x.propX // "undefined"
x.propY // "undefined"