2015-05-01, 20:23
  #1
Medlem
HTML-kod:
var name //innehåller filnamnet ex test.jpeg
var extension //innehåller bara filändelsen

Om extension är jpeg vill jag ändra det till jpg och ändra det i name variabeln

HTML-kod:
        if(extension === 'jpeg') {
            extension = 'jpg';
        }

Så långt har jag kommit. Men hur uppdaterar jag name? Dvs om namnet i name är "test.jpg" ska den fortfarande heta "test.jpg" men om namnet i name är "test.jpeg" ska det ändras till "test.jpg" i namnvariabeln.
Citera
2015-05-01, 21:27
  #2
Medlem
Pellejonsons avatar
Kod:
var name = "text.jpeg";
var extension = "jpeg";

if(extension === "jpeg") {
	var extension = "jpg";
	name.replace(name.substr(name.lastIndexOf('.') + 1), extension);
}
Citera
2015-05-02, 23:42
  #3
Medlem
Povels avatar
Citat:
Ursprungligen postat av Pellejonson
Kod:
var name = "text.jpeg";
var extension = "jpeg";

if(extension === "jpeg") {
	var extension = "jpg";
	name.replace(name.substr(name.lastIndexOf('.') + 1), extension);
}

nej nej
Citera
2015-05-03, 20:28
  #4
Medlem
Citat:
Ursprungligen postat av Povel
nej nej

Vad menar du med det? Fungerade perfekt. Har du någon bättre lösning?
Citera
2015-05-04, 00:13
  #5
Medlem
Povels avatar
Citat:
Ursprungligen postat av help
Vad menar du med det? Fungerade perfekt. Har du någon bättre lösning?

Fungerade i vilken bemärkelse då?

replace-funktionen (som i sig fungerar utmärkt) förändrar inte strängen (eller värdet av variablen) man anropar den på. Den returnerar det (ev.) nya värdet:

Kod:
var foo "bar";
var 
bak foo.replace(/r/, "w");

foo// "bar"
bak// "baw" 

Att jag uttryckte min skepsis mot det tidigare inlägget beror alltså på att sättet som replace användes på där inte har någon effekt på värdet av variabeln name.

/p
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in