function validator(value) {
return {
equal(array) {
if(array.toString() === value.toString()) {
return true;
} else {
return false;
}
},
isArray() {
if(Array.isArray(value)) {
return this;
} else {
return false;
}
},
isString() {
if(typeof value === "string") {
return true;
} else {
return false;
}
},
isNumber() {
if(typeof value === "number") {
return true;
} else {
return false;
}
}
}
}
console.log(validator('1').isArray()); // false
console.log(validator([]).isArray().equal([1, 2, 3])); // false
console.log(validator([1, 2, 3]).isArray().equal([1, 2, 3])); // true
console.log(validator('1').isString()); // true
console.log(validator('1').isNumber()); // false
function validator(value){
return {
states: [],
value: value,
isArray(){
if(Array.isArray(this.value)){
this.states.push({ "isArray": true });
return this;
}
},
isNumber() {
if(typeof this.value === "number") {
this.states.push({ "isNumber": true });
} else {
this.states.push({ "isNumber": false });
}
return this;
},
getStates() {
return this.states;
}
}
}
console.log(validator([1,2,3]).isArray().isNumber().getStates()) // [{isArray: true}, {isNumber: false}]
function validator(value){
return {
flag: false,
value: value,
isArray(){
if(Array.isArray(this.value)){
this.flag = true;
return this.flag;
}
}
}
Обратите внимание, что теперь больше не нужно напрямую взаимодействовать с HTML. Приложение Vue присоединяется к одному элементу DOM (#app в данном случае), а затем полностью контролирует его. HTML является нашей точкой входа, но всё остальное происходит внутри вновь созданного экземпляра Vue.