Как вернуть несколько значений в angular 2?

Я хочу вернуть несколько значений, например "имя" и "второе имя" по отдельности. Как я могу это сделать?

Я попытался вернуть их в виде строки, но не работает:

import { Component } from '@angular/core';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  pageheader : string = 'text';
  imagepath : string = 'https://3wga6448744j404mpt11pbx4-wpengine.netdna-ssl.com/wp-content/uploads/2018/11/Treehouse-Logo-Green-Large.png';
  firstname : string ='Tom';
  secondname : string =' Hopkins';
  getfullName(): string 
  {
      return this.firstname;
      return this.secondname
  }

Вы не можете добавить несколько операторов return в один блок, вместо этого вы можете вернуть объект, имеющий оба значения, и использовать его где угодно!

Pardeep Jain 29.11.2018 12:09
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
1
2 709
3

Ответы 3

Вы не можете добавить несколько операторов возврата в один блок, вместо этого вы можете вернуть объект, имеющий оба значения, и использовать его где угодно, например -

getfullName() {
      return {firstName: this.firstname, lastName: this.secondname}
}

Если вы хотите, чтобы на вашем getFullName() было полное имя, просто используйте как ...

getfullName() {
  return `${this.firstname} ${this.secondname}`
}

Функция Javascript возвращает одно значение, поэтому в этом случае вы можете вернуть значение object, array, string.

Объект

getfullName() {
      return {firstName: this.firstname, lastName: this.secondname}
}

Множество

getfullName() {
      return [this.firstname,this.secondname];
}

Нить

getfullName() {
      return `${this.firstname} ${this.secondname}`;
}

Другой способ создать функцию, которая при каждом вызове будет возвращать другое имя, на основе array.

Компонент

  selectedName ='';
  names = ['Tom','Hopkins','Other'];
  index =-1;
  getNames() {
      this.index++;
      if (!this.names[this.index]){
        this.index  = 0
      }
    return this.names[this.index];
  }

  setSelectedName(){
    this.selectedName = this.getNames();
  }

Шаблон

<button (click) = "setSelectedName()">Get Name</button> {{selectedName}}

демонстрация stackblitz

Другие вопросы по теме