[Off] Duvida, JavaScript
#1

Boa noite, bom desde jб agradeзo aqueles que responder.

Alguem sabe se й possivel, ou sabe como fazer um Array em java script para retornar a posiзгo do array?

tava procurando nos foruns de java, javascript mais nгo achei nada relacionado.

eu tambйm sei que o forum й de SAMP.. entгo nгo precisa me falar que й de samp pra ir procurar em outros foruns, pois sei que aqui mesmo sendo um forum sobre a programaзгo pawn, encontram-se varios usuarios que programam em outras linguagens, entгo desde ja agradeзo.

eu tenho o seguinte:

PHP код:

function orderCres(a,b){return b}
    function 
orderDecres(a,b){return a}
    
    function 
Sequencia()
    {
        var 
valores = new Array( 1,3,4,2,5,6,8,10,9,7);
        
valores.sort(orderDecres);
        
alert(''+valores);
    } 
sу que como podem ver isso vai ordenar os numeros em ordem decrescente, atй ai tudo bem, eu preciso que ele faзa isso mesmo.

mais ao invez dele me retornar os numeros de 1 a 10 eu preciso da posiзгo real deles no array. por exemplo:

ele me retorna assim: 10,9,8,7,6,5,4,3,2,1.. eu queria que aparecece 7,8,6,9,5,4,2,1,3,0 que sгo as respectivas ordens deles no array.

desde -ja fico muito grato, obrigado.
Reply
#2

Nгo entendi muito bem, mas tente usar algum ponteiro. Tente alert(''+&valores);
Reply
#3

Quote:
Originally Posted by Victor'
Посмотреть сообщение
Nгo entendi muito bem, mas tente usar algum ponteiro. Tente alert(''+&valores);
Nгo, nгo й isso, mais obrigado por responder.

deixe-me tentar explicar novamente:

eu tenho alguns numeros nos arrays.

eu queria colocar esses numeros em ordem decrescente, e mostrar em qual array tal numero estб.

vou tomar como exemplo os numeros 1,2,3

PHP код:
Array(1,2,3); 
nesse caso eu tenho um array que tem tres espaзos na memoria, espaзo 0, espaзo 1, espaзo 2;

no alert, eu queria que apresentace assim:

PHP код:
"Numeros em ordem decrescente: 3,2,1"
"Posiзхes dos numeros no respectivo array: O numero 3 й o 3є elemento do array e esta alocado no espaзo reservado 2"
"O numero 2 й o 2є elemento do array e esta alocado no espaзo reservado 1"
"O numero 1 й o 3є elemento do array e esta alocado no espaзo reservado 0" 
e assim por diante. parece simples.. mais acho que estou me expressando mal para explicar para vocкs.
Reply
#4

tentou defini-lбs?

PHP код:
new Array(1) . . . . . 
A algum tempo eu iniciei em programaзгo PHP mas logo parei pois nгo tinha muito tempo pra se dedicar a uma linguagem complicada.
Reply
#5

Quote:
Originally Posted by WotusPower
Посмотреть сообщение
tentou defini-lбs?

PHP код:
new Array(1) . . . . . 
A algum tempo eu iniciei em programaзгo PHP mas logo parei pois nгo tinha muito tempo pra se dedicar a uma linguagem complicada.
PHP Nгo й uma linguagem complicada...
Reply
#6

Й Sim, se vocк quiser ser um profissional pode crer.
Reply
#7

Quote:
Originally Posted by WotusPower
Посмотреть сообщение
Й Sim, se vocк quiser ser um profissional pode crer.
Nгo pude deixar de ler...

O PHP Nгo й uma linguagem complicada (exeto para os leigos), para quem acha que a pseudo-linguagem pawn dificil achara qualquer outra dificil.

Abraзos.
Reply
#8

PHP код:
var pArray = new Array(123);

pArray[0// 1
pArray[1// 2
pArray[2// 3 
Isso ajuda ?
Reply
#9

realmente й algo simples, mas tambйm nгo me vem em mente como fazer isso, a nгo ser com um monte de cуdigo e loops =x

Vou tomar como um desafio !! Caso consiga resolver antes de alguйm, poste aqui o cуdigo pois despertei curiosidade nisso.

Reply
#10

Olб pessoal, boa noite,

Primeiramente, gostaria de agradescer a todos que se prontificaram a tentar ajudar. e os demais que responderam o topico.

vou responder todos por meio de quote.

Quote:
Originally Posted by WotusPower
Посмотреть сообщение
tentou defini-lбs?

PHP код:
new Array(1) . . . . . 
A algum tempo eu iniciei em programaзгo PHP mas logo parei pois nгo tinha muito tempo pra se dedicar a uma linguagem complicada.
sim, havia tentado enumera-los, mais em vгo. no mais, obrigado por comentar.


Quote:
Originally Posted by HumildadeAgain
Посмотреть сообщение
PHP Nгo й uma linguagem complicada...
realmente nгo й complicado, o problema й q a memoria nos prega peзas e faz esquecer coisas pequenas que poderiam ser a soluзгo de grandes problemas.. no mais, obrigado por comentar.


Quote:
Originally Posted by WotusPower
Посмотреть сообщение
Й Sim, se vocк quiser ser um profissional pode crer.
obrigado por comentar.

Quote:
Originally Posted by tonisantolia
Посмотреть сообщение
Nгo pude deixar de ler...

O PHP Nгo й uma linguagem complicada (exeto para os leigos), para quem acha que a pseudo-linguagem pawn dificil achara qualquer outra dificil.

Abraзos.
obrigado por comentar.

Quote:
Originally Posted by paulor
Посмотреть сообщение
PHP код:
var pArray = new Array(123);
pArray[0// 1
pArray[1// 2
pArray[2// 3 
Isso ajuda ?
infelizmente nгo ajudaria paulor, eu havia tentado isso tbm ^^. mais obrigado.


Quote:
Originally Posted by Falcon.
Посмотреть сообщение
realmente й algo simples, mas tambйm nгo me vem em mente como fazer isso, a nгo ser com um monte de cуdigo e loops =x

Vou tomar como um desafio !! Caso consiga resolver antes de alguйm, poste aqui o cуdigo pois despertei curiosidade nisso.

sim, eu descobri algumas formas de fazer o que eu queria, postarei no final deste poste. obrigado por ajudar.


Quote:
Originally Posted by paulor
Посмотреть сообщение
Acho que seja isso que vocк deseja:

PHP код:
<script>     
    function 
Sequencia() 
    { 
        var 
valores = new Array( 1,3,4,2,5,6,8,10,9,7); 
        
valores.reverse();
        
alert(''+valores); 
    }  
    
Sequencia();
</script> 
Paulor, essa forma apenas altera a ordem do array, fazendo ele ser apresentado de tras para frente.. o que eu queria era ordenar em ordem crescente, sem perder o indice do array. de toda forma, muito obrigado por tentar ajudar, seu codigo tbm me deu algumas ideias ontem, e por fim resolvi.

Quote:
Originally Posted by Alado
Посмотреть сообщение
PHP e CSS sгo linguagens que se vocк tiver o minimo de lуgica de programaзгo, vocк aprende sу vendo o source dos sites. Nгo й nada complicado!
obrigado por responder.

Quote:
Originally Posted by Falcon.
Посмотреть сообщение
Crнticos do fуrum virгo falar que CSS nгo й linguagem de programaзгo e o cуdigo PHP nгo й exibido no cуdigo fonte da pбgina...
obrigado por responder.

SOLUЗХES:

andei pesquisando nos foruns de php mesmo e acabei por encontrar algumas soluзхes que resolvem o problema.

tais como:

for/in
asort()
arsort()
tbm usei o slice() para clonar o array.

vejamos, o que eu usei por definitivo foram for/in, e slice, por se tratar de javascript simples.:

PHP код:

    
function orderDecres(a,b){return a//funcao para passar numeros para ordem decrescente.
    
    
function Sequencia() 
    { 
        
        var 
valores = new Array(1,4,2,5,3); // cria o array
        
        
var novovalor valores.slice(); //clona o array com slice()
      
        
document.write('valores: '+valores+'<br>'); //printa o array valores sem alteraзгo.
        
        
document.write('Valores em ordem Decrescente '+novovalor.sort(orderDecres)+'<br>'); // printa os valores do novo array em ordem decrescente
        
        
for ( var i in valores// uso do for/in foreach no array
        
{
            
document.write('Indice do Array: \''+i+'\' Valor do campo: ' valores[i] + '<br />'); // printa o indice, e o valor dele sem alteraзгo.
        
}        
    }
    
    
Sequencia();
saida do codigo acima:
valores1,4,2,5,3
Valores em ordem Decrescente 5
,4,3,2,1
Indice 
do Array: '0' Valor do campo1
Indice 
do Array: '1' Valor do campo4
Indice 
do Array: '2' Valor do campo2
Indice 
do Array: '3' Valor do campo5
Indice 
do Array: '4' Valor do campo
outra forma usando Arsort()

PHP код:

<?php
$ordenar 
= array(1,2,3,4,5);
arsort($ordenar);
reset($ordenar);
while (list(
$chave$valor) = each($ordenar)) {
    echo 
"$chave = $valor\n<br>";
}
?> 
saida do codigo:
4 = 5
3 = 4
2 = 3
1 = 2
0 = 1
essa forma й muito simples, e faz o q eu queria, mais tinha me esquecido hehe.

e por fim o Asort()
PHP код:
<?php
$ordenar 
= array(1,2,3,4,5);
asort($ordenar);
reset($ordenar);
while (list(
$chave$valor) = each($ordenar)) {
    echo 
"$chave = $valor\n<br>";
}
?> 
saida:
0 = 1
1 = 2
2 = 3
3 = 4
4 = 5
a diferenзa й que ele vai alterar o indice, e eu preciso manter o indice original entгo nгo serviria.

o for/in й uma maneira de usar forsearch em array, demonstrei no primeiro exemplo.

no mais, muito obrigado aos que responderam. fico muito grato.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)