HomeLập trìnhJavaScriptChức năng của...

Chức năng của người điều hành điểm thẩm vấn (?) trong JavaScript


Artigo bản gốc được viết bởi Nishant Kumar
Artigo gốc: Toán tử Dấu chấm hỏi (?) Hoạt động như thế nào trong JavaScript
Traduzido và chuyển thể bởi Carolina Brito

O operador de condicional ou de ponto de thẩm vấn, đại diện cho um ?, đó là dos recursos mais poderosos do JavaScript. O nhà điều hành ? é usado em hướng dẫn điều kiện e, quando acompanhado de um :pode funcionar como uma alternativa compacta para instruções do tipo if...else.

Ha, no entanto, mais a se falar sobre ele. Tồn tại sử dụng nguyên tắc cho người vận hành ?, dos dos quais você pode not ter usado ainda e nem ouvido falar a respeito. Vamos aprender sobre eles agora em detalhes.

Três usos principais para o ponto de thẩm vấn (?) em JavaScript:

  1. Operador ternário
  2. Encadeamento tùy chọn
  3. Coalescência nula

Vamos kiểm tra cada um deles em detalhes, começando com a maneira mais comum de se usar o operador ? – như một nhà điều hành ternário.

1. Toán tử ternário

O termo ternário significa composto de três itens ou partes. O nhà điều hành ? đồng thời là chamado của nhà điều hành ternário pois, khác biệt của các nhà điều hành bên ngoài như o de igualdade estrita (===) ou o operador de resto (%), ele é o único que recebe tres operandos.

Comecando com ?, adicionamos uma điều kiện cho lado esquerdo và um valor do lado direito se se retornado quando là điều kiện cho verdadeira. Trong tương lai, adicionamos dois pontos (:) seguides de um valor a ser retornado quando a é é falsa.

Đọc thêm  Các hàm toán học JavaScript được giải thích
Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--1-

O operador ternário é, basicamente, um atalho para uma hướng dẫn if...else truyền thống.

Vamos so sánh hoặc nhà điều hành ternário với hướng dẫn if...elsemở rộng:

Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--22-

Aqui, o operador ternário ocupa apenas uma linha de codigo, enquanto a hướng dẫn if...else tem sete linhas.

Sử dụng một nhà điều hành nước ngoài hiệu quả nhất, chắc chắn rồi?

2. Encadeamento tùy chọn

Vào năm 2020, một lần mới có tính lặp lại, conhecido como Encadeamento tùy chọn, được giới thiệu không có JavaScript.

Để tham gia như một chức năng, hãy tưởng tượng đây là một kịch bản.

Vamos dizer que vo tenha um codigo que chama uma propriedade de objeto that don’t tồn tại, o que gera um erro em tempo deexecução. Có khả năng xảy ra lỗi không xác định rõ ràng về việc bạn có banco de dados hoặc chứng minh API của một người hay không:

Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--23--2
Ảnh chụp màn hình-2021-01-25-00-56-06
Um erro comum – TypeError: Cannot read property ‘salary’ of undefined

Graças ao Encadeamento opcional, você pode simplesmente inserir um ? entre o nome da propriedade eo ponto antes da próxima propriedade.

Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--24-

Com isso, or retorno será undefined em vez de lançar um erro.

Một giải pháp tùy chọn là một lần lặp lại mà bạn phải chơi trong môi trường xanh cho những người phát triển JavaScript.

3. Coalescência nula

Trong tất cả các trường hợp, nó được xác định chính xác là một miếng đệm giá trị cho một tên sở hữu hoặc một miếng đệm giá trị.

Ví dụ, vamos diizer que estamos um app de previsão do tempo, no estamos buscando a tempura, umidade do ar, velcidade of vento, pressão atmosférica, hora do nascer e do por dol, além de uma imagem of cidade. Inserimos um lugar, por exemplo, BangaloreTuy nhiên, theo động cơ của algum, hình ảnh của thành phố không phải là banco de dados.

Đọc thêm  JavaScript setTimeout() – JS Timer để trì hoãn N giây

Quando o app busca e exibe os dados, a imagem estará em branco, o que pode ficar feio na interface. O que podemos fazer, nesse caso, é definir uma imagem padrão para aquelas cidades que not a uma imagem – em nosso exemplo, Bangalore.

Theo cách này, khi ứng dụng xuất hiện trên dados, một hình ảnh được bảo vệ bằng lá cho các thành phố không phải là hình ảnh chính.

Podemos fazer isso usando o operador ||conhecido como o operador logico OR:

Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--4-

Porém, se você usar || para fornecer um valor padrão, poderá encontrar compportamentos inesperados se você coiar alguns valores como utilizáveis ​​(ví dụ, '' bạn ).

Xem xét một kịch bản về một biến thể có giá trị 0 hoặc một chuỗi vazia. Sử dụng (||), ela será coiada như không xác định bạn VÔ GIÁ TRỊ e retornará o valor padrão que estabelecemos.

Em vez do operador logico OR (||), você pode usar dois pontos de thẩm vấn (??), também conhecidos como Coalescência nula.

Vamos aprender là một ví dụ.

const value1 = 0 || 'default string';
console.log(value1);


const value2 = '' || 1000;
console.log(value2);
Là toán tử xếp hạng OR (||)

Hiện tại, temos ‘0’ e ‘default string’ với giá trị biến đổi1. Se retornarmos seu valor no console, teremos o valor ‘default string’, o que é estranho. Em vez de ‘default string’, deveríamos recber 0, já que zero not é không xác định nem vô giá trị. Assim, ‘||‘ not faz o queremos que faça aqui.

É o mesmo que ocorre, nesse caso, com value2.

Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--25-
Resultado para ‘||
const value1 = 0 ?? 'default string';
console.log(value1);


const value2 = '' ?? 1000;
console.log(value2);
Com Coalescência nula

Porém, se substituirmos ‘||‘ bởi ‘??‘, obteremos 0 e uma string vazia, o que rina o recurso bem interessante.

Đọc thêm  Bong bóng sự kiện trong JavaScript – Cách lan truyền sự kiện hoạt động với các ví dụ
Hồng-Dễ thương-Sang trọng-Cổ điển-Những năm 90-Ảo-Đố vui-Đố vui-Bài thuyết trình--26-
Resultado para ‘??

Một sự kết hợp giữa các chức năng ngoại lai giống như một nhà điều hành toán học HOẶC, ngoại trừ những người béo phì mà bạn đã nhận được giá trị của lado direito quando o valor của lado esquerdo é undefined bạn null.

Em outras palavras, ?? đôi khi cho phép valores undefined e nullnot allowindo strings vazias ('') bạn S.

kết luận

Espero que agora você compenda como chức năng hoặc nhà điều hành ? em JavaScript. Parece simples, mas é um dos caracteres mais poderosos da language. Ele fornece aquele “a mais” sintático de tres maneiras other, poré incríveis.

Experimente-as e conte-nos o resultado.

Feliz aprendizagem!



Zik.vn – Biên dịch & Biên soạn Lại

spot_img

Create a website from scratch

Just drag and drop elements in a page to get started with Newspaper Theme.

Buy Now ⟶

Bài viết liên quang

DMCA.com Protection Status