// Применим цепные методы для работы со строкой
var string, newString;
string = "Sometimes the same is different";
newString = string
.replace("is", "is not")
.concat(" actually")
.toUpperCase()
.replace(/ /g, "\n")
.slice(10);
console.log(newString);
/*
THE
SAME
IS
NOT
DIFFERENT
ACTUALLY
*/
// Цепные методы можно применять при работе с объектами.
var Vec2 = function(x, y) {
this.x = x;
this.y = y;
}
// метод для сложения векторов
Vec2.prototype.add = function(vec) {
this.x += vec.x;
this.y += vec.y;
return this;
};
var world = {
gravity: new Vec2(0, 1),
speed: new Vec2(1, 3)
};
var object = {
position: new Vec2(10, 20),
speed: new Vec2(1, 3),
// обновление положения объекта
update: function(){
this.position
.add(this.speed)
.add(world.gravity)
}
};
console.log(object.position); // Object { x: 10, y: 20 }
object.update();
console.log(object.position); // Object { x: 11, y: 24 }
var string, newString;
string = "Sometimes the same is different";
newString = string
.replace("is", "is not")
.concat(" actually")
.toUpperCase()
.replace(/ /g, "\n")
.slice(10);
console.log(newString);
/*
THE
SAME
IS
NOT
DIFFERENT
ACTUALLY
*/
// Цепные методы можно применять при работе с объектами.
var Vec2 = function(x, y) {
this.x = x;
this.y = y;
}
// метод для сложения векторов
Vec2.prototype.add = function(vec) {
this.x += vec.x;
this.y += vec.y;
return this;
};
var world = {
gravity: new Vec2(0, 1),
speed: new Vec2(1, 3)
};
var object = {
position: new Vec2(10, 20),
speed: new Vec2(1, 3),
// обновление положения объекта
update: function(){
this.position
.add(this.speed)
.add(world.gravity)
}
};
console.log(object.position); // Object { x: 10, y: 20 }
object.update();
console.log(object.position); // Object { x: 11, y: 24 }
Комментариев нет:
Отправить комментарий