2015-03-31 4 views
0

Я пытаюсь получить код JavaScript, чтобы случайно выбрать строку текста из массива. Это то, что у меня есть до сих пор, но оно, похоже, не работает, не ценит помощь. Не знаю, если это имеет значение, но это для веб-сайта.Случайная строка текста из массива

var myArray = ['One does not simply click the acorn'.'acorn spices all the rage with Martha Stewart', 'Once more into the acorn tree my friends','Acornbook launches as first acorn based social media']; 
var rand = myArray[Math.floor(Math.random() * myArray.length)]; 
var postmessage = + myArray; 
+0

Что конкретно не работает? Что вы сделали для его отладки? – clearlight

+0

@ntalbs - Отлично, вы действительно изменили код с помощью своего редактирования. –

ответ

2

Вы используете точку "." вместо запятой "," среди первых двух элементов в myArray. Вы должны использовать запятую, как показано ниже.

var myArray = ['One does not simply click the acorn','acorn spices all the rage with Martha Stewart', 'Once more into the acorn tree my friends','Acornbook launches as first acorn based social media']; 
+0

Несмотря на то, что @ntalbs изменил код, вы ответили правильно. –

0

Я думаю, что вы сделали простую ошибку случайно. Вы пытаетесь добавить массив к переменной. Я предполагаю, что вы хотели добавить случайно выбрал элемент, так что вы хотели бы на третьей линии:

var postmessage = + rand; 
+1

Вы не можете использовать оператор '+ =' после оператора 'var'. При попытке вызвать оператор сложения переменная не будет иметь значения. Вероятно, это приведет к ошибке синтаксиса. –

+0

@DanPrnce thx, рад, что ты это понял! Я тоже привык к Java! –

0

Вы получаете случайное значение в правильном пути, но проблема это то, что происходит на линии 3.

var postmessage = + myArray; 

Ввод + знака перед массивом будет пытаться превратить его в ряд, тем самое + myArray результатов в NaN, которые, вероятно, не то, что вы хотели.

Я собираюсь предположить, что вы, вероятно, захотели хранить случайную фразу в сообщении сообщения. Что вместо этого будет выглядеть следующим образом:

var postmessage = rand; 
0
<script> 
var postmessage = ''; // initialization for getting the random selected text from array 
var myArray = ['One does not simply click the acorn', 'acorn spices all the rage with Martha Stewart', 'Once more into the acorn tree my friends', 'Acornbook launches as first acorn based social media']; 
var rand = myArray[Math.floor(Math.random() * myArray.length)]; 
var postmessage = rand; 
</script> 
Смежные вопросы