Это действительно неясно, что вы пытаетесь сделать, но я все равно могу помочь.
Вот что у вас есть, более или менее: http://jsfiddle.net/ySqGg/
я должен получить красный text1 Но я получаю красный text1 + текст «истинный»
Это происходит потому, что вы «добавление» true
в строку.
variablefotok = variablefot=true;
// variablefotok and variablefofot are now both set to true
variable1 = 'text1' +variablefotok;
// same as: variable1 = 'text1' + true;
// `true` is converted into a string so it can be combined with a string
// variable1 is now `text1true`
Так почему же это происходит?Ну давайте посмотрим на одну строку выше:
variablefot = false;
variablefotok = variablefot = true;
Это можно пояснить следующим образом:
variablefot = false;
variablefotok = (variablefot = true);
Итак, сначала вы установите variablefot
в false
. Затем на следующей строке вы установите значение true
. Операторы присваивания возвращают присвоенное значение, поэтому вы также устанавливаете значение variablefotok
.
Затем более поздняя версия f2
работает, а variablefot
теперь верна, и вы получаете красный цвет.
Возможно, вы имели в виду сравнение?
variablefotok = (variablefot == true);
С этим изменением, текст делает не краснеют, потому что variablefot
остается false
. http://jsfiddle.net/ySqGg/1/
Но вам редко приходится что-то сравнивать с true
. Вы можете просто использовать переменную, так как это true
или false
.
variablefotok = variablefot;
Который также не превращает ничего красного. См: http://jsfiddle.net/ySqGg/2/
Это сбивает с толку, чтобы ответить, потому что вы настраиваете много переменных, но только с помощью один за что usefult (variablefot
в f2
). Если бы я был вами, я бы подумал о том, какие переменные у вас есть, и убедитесь, что вам действительно нужен каждый, а затем удалите остальные.
Можете ли вы объяснить, что вы хотите? – Popnoodles
Я хочу получить текст1 и цвет тела красный, когда я использую vavariable = variable1. И когда я использую vavariable = variable2, я хочу получить text2 без красного цвета. – Simon
В нижней части первого блока кода, прежде чем вы вызываете 'f1' и' f2', как вы думаете, что находится в переменных? – Sumurai8