{"id":254,"date":"2022-11-06T08:43:00","date_gmt":"2022-11-06T08:43:00","guid":{"rendered":"https:\/\/pacohunterdev.com\/blog\/?p=254"},"modified":"2022-11-03T22:52:05","modified_gmt":"2022-11-03T22:52:05","slug":"cadena-termina-con-js","status":"publish","type":"post","link":"https:\/\/pacohunterdev.com\/blog\/2022\/11\/06\/cadena-termina-con-js\/","title":{"rendered":"Cadena termina con&#8230; JS"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Descripci\u00f3n del problema<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Regresar true si una cadena termina con otra cadena<\/em> <em>dadas como argumentos. Ejemplo verificarTerminacion(&#8216;Holaa&#8217;, &#8216;aa&#8217;) \/\/ return true. Si la cadena de terminaci\u00f3n est\u00e1 vac\u00eda regresar true.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Soluci\u00f3n planteada:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Verificar si la cadena de terminaci\u00f3n est\u00e1 vac\u00eda, si es as\u00ed regresar true<\/li>\n\n\n\n<li>Obtener la terminaci\u00f3n de la cadena original, dependiendo del tama\u00f1o de la cadena de terminaci\u00f3n<\/li>\n\n\n\n<li>Verificar si la terminaci\u00f3n de la cadena original es igual a la cadena de terminaci\u00f3n.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"> 1. Verificar si la cadena de terminaci\u00f3n est\u00e1 vacia<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">En este paso solo verificamos si la cadena existe, si no regresamos <em>true <\/em>de una vez <\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"587\" height=\"130\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-22.png\" alt=\"\" class=\"wp-image-255\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-22.png 587w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-22-300x66.png 300w\" sizes=\"auto, (max-width: 587px) 100vw, 587px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"361\" height=\"89\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-23.png\" alt=\"\" class=\"wp-image-256\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-23.png 361w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-23-300x74.png 300w\" sizes=\"auto, (max-width: 361px) 100vw, 361px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">2. Obtener la terminaci\u00f3n de la cadena original<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Aqu\u00ed se ocupa el m\u00e9todo <strong>slice()<\/strong>, est\u00e9 m\u00e9todo obtiene una copia por as\u00ed decirlo del arreglo original sin afectarlo. Los argumentos que recibe es la posici\u00f3n inicial y la final. Es decir de d\u00f3nde va a empezar a tomar los valores y hasta d\u00f3nde. Recordemos que en los arreglos y cadenas el \u00edndice inicial siempre es <strong>0<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Entonces para obtener la terminaci\u00f3n de la cadena original, al m\u00e9todo slice() se le pasa la longitud de la cadena de terminaci\u00f3n pero en negativo, con esto se inicia del final hasta donde llegue la longitud de la cadena de terminaci\u00f3n, por ejemplo para la cadena original \u00abPerro\u00bb si la longitud de la cadena de terminaci\u00f3n es 3, ser\u00e1 slice(-3) e ir\u00eda de la <strong>o <\/strong>hasta la primer <strong>r.<\/strong> El c\u00f3digo queda as\u00ed<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"631\" height=\"141\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-24.png\" alt=\"\" class=\"wp-image-257\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-24.png 631w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-24-300x67.png 300w\" sizes=\"auto, (max-width: 631px) 100vw, 631px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"353\" height=\"52\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-25.png\" alt=\"\" class=\"wp-image-258\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-25.png 353w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-25-300x44.png 300w\" sizes=\"auto, (max-width: 353px) 100vw, 353px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">3. Verificar si la terminaci\u00f3n de la cadena es igual a la cadena de comparaci\u00f3n<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Para terminar solo verificamos si lo que se obtiene en el paso anterior es igual a la cadena de terminaci\u00f3n. El c\u00f3digo final queda de la siguiente manera<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"637\" height=\"181\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-26.png\" alt=\"\" class=\"wp-image-259\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-26.png 637w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-26-300x85.png 300w\" sizes=\"auto, (max-width: 637px) 100vw, 637px\" \/><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"362\" height=\"89\" src=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-27.png\" alt=\"\" class=\"wp-image-260\" srcset=\"https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-27.png 362w, https:\/\/pacohunterdev.com\/blog\/wp-content\/uploads\/2022\/11\/image-27-300x74.png 300w\" sizes=\"auto, (max-width: 362px) 100vw, 362px\" \/><\/figure>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Descripci\u00f3n del problema Regresar true si una cadena termina con otra cadena dadas como argumentos. Ejemplo verificarTerminacion(&#8216;Holaa&#8217;, &#8216;aa&#8217;) \/\/ return true. Si la cadena de terminaci\u00f3n est\u00e1 vac\u00eda regresar true. Soluci\u00f3n planteada: 1. Verificar si la cadena de terminaci\u00f3n est\u00e1 vacia En este paso solo verificamos si la cadena existe, si no regresamos true de una vez 2. Obtener la terminaci\u00f3n de la cadena original Aqu\u00ed se ocupa el m\u00e9todo slice(), est\u00e9 m\u00e9todo obtiene una copia por as\u00ed decirlo del arreglo original sin afectarlo. Los argumentos que recibe es la posici\u00f3n inicial y la final. Es decir de d\u00f3nde va&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[17],"tags":[23],"class_list":["post-254","post","type-post","status-publish","format-standard","hentry","category-javascript","tag-javascript"],"_links":{"self":[{"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/posts\/254","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/comments?post=254"}],"version-history":[{"count":1,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/posts\/254\/revisions"}],"predecessor-version":[{"id":261,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/posts\/254\/revisions\/261"}],"wp:attachment":[{"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/media?parent=254"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/categories?post=254"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pacohunterdev.com\/blog\/wp-json\/wp\/v2\/tags?post=254"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}