Как поменять имя из подсказки | String to Array поменялся местами - PullRequest
1 голос
/ 30 июня 2011

Я недавно начал изучать Javascript, и в качестве небольшой задачи я попытался создать программу, в которой приглашение запрашивает имя, а затем программа выводит имя в обратном порядке. Мое мышление было следующим:

var name = prompt("What is your name?");
name = new Array(name.length);
name.reverse();
document.write(name);

Что не так с этим кодом?

Ответы [ 5 ]

2 голосов
/ 30 июня 2011

Преобразовать строку в массив, перевернуть ее, объединить обратно:

s.split('').reverse().join('');
1 голос
/ 30 июня 2011

Для начала массив ничего не знает о символах строки. Вы просто создаете заполненный нулем массив такой же длины.

Правильный способ преобразования строки в массив использует splice:

name = Array.prototype.slice.apply(name);

slice - это метод массива, который возвращает часть массива. Когда вы не передаете никаких аргументов, он клонирует массив. Удобно, что он работает для не-массивов и создает массив.

apply - это способ вызова функции для произвольного объекта. Это позволяет нам вызывать метод массива для строки.

0 голосов
/ 22 февраля 2019
    var fullName = prompt(" What is your full name"); 
    document.getElementById("fn").innerHTML = fullName.toUpperCase();


    document.getElementById("len").innerHTML = fullName.length;


function back() {

    return fullName.split('').reverse().join('');
}
document.getElementById("back").innerHTML=back();
0 голосов
/ 15 октября 2016
var name = "yourname";
var myFunction = function () {
var s = name;
return s.split('').reverse().join('');
}
myFunction();
0 голосов
/ 30 июня 2011

Обратный не является официальным методом объекта String.

Althought, вы можете создать его.

http://www.bytemycode.com/snippets/snippet/400/

...