---
title: "Slumpa ett tal och ett lösenord"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/117563-slumpa-ett-tal-och-ett-lösenord"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Smultron"
published: "2004-12-07T19:40:17.000Z"
updated: "2006-01-17T09:56:37.000Z"
replies: 9
views: 641
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/javascript/117563-slumpa-ett-tal-och-ett-lösenord"
---

# Slumpa ett tal och ett lösenord

## #1 — Smultron, 2004-12-07T19:40Z

Hejsan jag har ett problem, jag vill slumpa fram ett lösenord, och sen vill jag slumpa fram eller tal mellan 000 och 999, det skall alltså innehålla 3 siffor.

jag har gjort det i php men jag vill göra det med javascript om det är möjligt, här är koden för att göra de olika med php...

```php
                // slumpa ett lösenord på 6 tecken
	$tecken = "abcdefghijklmnopqrstuvwxyz1234567890";
	$pass="";
	$i=1;
	while($i<=6)
	{
		$pass=$pass. substr($tecken,(mt_rand()%strlen($tecken)),1);
		$i++;
	}

                // slumpa ett tal mellan 000 och 999
                $talet= rand(000, 999);
```

Permalänk: https://www.webforum.nu/p/117563

## #2 — Jojoxx, 2004-12-07T19:54Z

Hej hej

```
// slumpa ett lösenord på 6 tecken
tecken = "abcdefghijklmnopqrstuvwxyz1234567890";
pass="";
for(var i=0;i<6;i++){
	pass=pass+tecken.charAt(Math.floor(Math.random()*tecken.length));
}
// slumpa ett tal mellan 000 och 999
talet=(""+Math.random()).substring(2,5)
```

Permalänk: https://www.webforum.nu/p/1500948

## #3 — Smultron, 2004-12-07T20:13Z

thx

Permalänk: https://www.webforum.nu/p/1500956

## #4 — ptr_lks, 2006-01-17T07:27Z

Frågor angående koden, tack

Hej,

> **Jojoxx skrev:**
>
> // slumpa ett lösenord på 6 tecken
> tecken = "abcdefghijklmnopqrstuvwxyz1234567890";
> pass="";
> for(var i=0;i\<6;i++){
> 	pass=pass+tecken.charAt(Math.floor(Math.random()\*tecken.length));
> }

Betyder 

```
*tecken.length
```

 hur många tecken som skall räknas med?

Permalänk: https://www.webforum.nu/p/1747365

## #5 — colione, 2006-01-17T08:13Z

Nej det är en del av slumpfunktionen.

```
for(var i=0;i<6;i++){
```

Bestämmer antalet tecken

Permalänk: https://www.webforum.nu/p/1747367

## #6 — ptr_lks, 2006-01-17T08:15Z

Ok att det är en del av slumpfunktione, men vad betyder

```
Math.random()*tecken.length
```

översatt till "fikonspråk"?

Tack för ordet
/ptr

Permalänk: https://www.webforum.nu/p/1747368

## #7 — colione, 2006-01-17T08:18Z

Math.random() ger ett random-nummer mellan 0-1. \*tecken.length. Gångrar slumpade nummret med hur många tecken som finns i variabeln tecken.

math.floor som omger det hela tar heltalet från produkten.

Permalänk: https://www.webforum.nu/p/1747369

## #8 — ptr_lks, 2006-01-17T08:24Z

tack för det  :) 
är/var redan bekant med

> **colione skrev:**
>
> Math.random() ger ett random-nummer mellan 0-1. math.floor som omger det hela tar heltalet från produkten.

Men vad är det för vits med 

> **colione skrev:**
>
> \*tecken.length

tack för ordet
/ptr

Permalänk: https://www.webforum.nu/p/1747370

## #9 — colione, 2006-01-17T08:42Z

Annars får du bara ut ett tal som ser ut som: 0.325688542 eller: 0.99625443. Och det motsvarar ingen teckenplats i variabeln. Genom att ta det gånger tecken length så får du fram 0.325688542\*34 (eftersom man börjar räkan på noll) = 11.07\[....\] och då plockar man 11 med floor.

Därefter så plockar man ut det 11:e tecknet i variabeln (med charAt) tecken och plusar på det i variabeln pass.

Permalänk: https://www.webforum.nu/p/1747376

## #10 — Erik Juhlin, 2006-01-17T09:56Z

> **colione skrev:**
>
> Math.random() ger ett random-nummer mellan 0-1.

Nja, Math.random() ger ett tal som är större än eller likamed 0 och mindre än 1. Kan alltså inte bli 1.
Annars hade Jojoxx kod buggat då och då... :)

Permalänk: https://www.webforum.nu/p/1747391

---

Tråden på webben: https://www.webforum.nu/amne/javascript/117563-slumpa-ett-tal-och-ett-lösenord
