Heim  >  Artikel  >  Backend-Entwicklung  >  JS+PHP implementiert ein detailliertes Beispiel für die Anzeige des Maximalwerts und der Position, nachdem der Benutzer eine Zahl eingegeben hat

JS+PHP implementiert ein detailliertes Beispiel für die Anzeige des Maximalwerts und der Position, nachdem der Benutzer eine Zahl eingegeben hat

怪我咯
怪我咯Original
2017-07-04 14:53:411420Durchsuche

In diesem Artikel wird hauptsächlich JS + PHP vorgestellt, um die Anzeige des Maximalwerts und der relativen Position der Zahl nach Eingabe der Zahl durch den Benutzer zu realisieren. Der Artikel enthält detaillierte Beispielcodes für Ihre Referenz und Ihr Studium Werfen wir gemeinsam einen Blick darauf.

Dieser Artikel stellt Ihnen hauptsächlich den relevanten Inhalt von JS + PHP vor, um den maximalen Wert und die Position zu erkennen, nachdem der Benutzer die Zahl eingegeben hat. Der Zweck besteht darin, den Unterschied zwischen JS und PHP zu unterscheiden und Ihr Denken zu erweitern Schauen Sie sich die Details an. Einführung:

Analyse

1. Verwenden Sie die JS-Eingabeaufforderung, um den Wert einzugeben, den der Benutzer eingeben möchte.

2. Verwenden Sie das Text-Tag des HTML-Formulars, um den Eingabewert an PHP zu übergebenverarbeiten Sie die Datei

3. PHP führt eine numerische Beurteilung durch und wählt aus der Maximalwert und die maximale Position.

Von flacher nach tiefer:

1. Holen Sie sich den Maximalwert des Arrays in JS.

var a=[10,20,40,30];
 // var max=0;
 var max=a[0];
 for(var i=0;i<a.length;i++){
 if(max<a[i]){
  max=a[i];
 }
 }
 alert("最大数为"+max);

Hier ist zu beachten: Sie können eine Variable nicht direkt auf max=0 setzen, da Sie nicht sicher sind, ob die Zahl, die Sie in Zukunft eingeben, kleiner als 0 oder größer als 0 ist [ der Fall ist größer als 0], daher sollten Sie eine Zahl im Array auswählen, nur die erste im Array max=a[0] .

Da die JS-Sprache auf einem objektorientierten Prozess basiert, sind alle Dinge in JS kann Objekte sein, daher verfügt sein Array über Attribute. Die Länge ist das JS-Array. Mit diesem Attribut können Sie das Array durchlaufen und dann einzeln vergleichen

2. Ermitteln Sie die Maximal- und Minimalwerte des Arrays in JS und ihre Positionen (d. h. welche Zahl im Array)

[Hinweis: Die Position +1 in Dieser Fall dient der einfacheren Anzeige und der Anfang des JS-Arrays ist ebenfalls 0]

var a=[10,20,40,30];
 var max=a[0];//不能指定一个数为最大值[var max=0](除非是确定的情况下),应该用数组里面的值,a[0]即让数组第一个值作为比较的最大值.
 var maxaddress=0;
 var min=a[0];
 var minaddress=0;
 for(var i=0;i<a.length;i++){
  if(max<a[i]){
   max=a[i];
   maxaddress=i
  }
  if(min>a[i]){
   min=a[i];
   minaddress=i
  }
 }
 alert("最大数为"+max+"位置为第"+(maxaddress+1)+"个");
 alert("最小数为"+min+"位置为第"+(minaddress+1)+"个");

3. Verwenden Sie nun die Eingabeaufforderung für Benutzereingaben, um Werte zu erhalten und den Maximalwert zu ermitteln. usw.

Schwierigkeit:

1. Eingabe, Eingabeaufforderung verwenden

2. Wie konvertiert man einen String in ein Array und konvertiert das Format? >

Voraussetzungen:

1. Das String-Objekt von JS wird zum Teilen der String-Spill-Methode verwendet (beachten Sie, dass in JS alles ein Objekt ist und daher als Methode und nicht als Funktion bezeichnet wird).

2. Konvertieren Sie eine „abc“-Zeichenfolge in den Zahlentyp, wie Sie sie konvertieren.

Nachdem die obige Analyse abgeschlossen ist, beginnen Sie mit dem Schreiben von Code
字符串转数字类型

◆Number

★数字类型的字符串,转换之后得到的数字。var n1="123"; var n2=Number(n1);//123

★★非数字字符串,转换之后得到是NaN。var n1="123abc"; var n2=Number(n1);//Nan 

★小数类型的字符串,转换之后得到的是原数字。var n1="123.23"; var n2=Number(n1);//123.23

 

◆parseInt

★整数数字类型的字符串,转换之后得到的整数数字。var n1="123"; var n2=parseInt(n1);//123

★数字开头的字符串,转换之后得到的是前边的数字。var n1="123abc"; var n2=parseInt(n1);//123

★非数字开头的字符串,转换之后得到的是NaN。。var n1="abc123"; var n2=parseInt(n1);//NaN

★★小数类型的字符串,转换之后取整(小数点直接省略)。var n1="123.53"; var n2=parseInt(n1);//123 var n1="-5.93"; var n2=parseInt(n1);//-5

 

◆parseFloat

★整数数字类型的字符串,转换之后得到的整数数字。var n1="123"; var n2=parseFloat(n1);//123

★数字开头的字符串,转换之后得到的是前边的数字。var n1="123abc"; var n2=parseFloat(n1);//123

★非数字开头的字符串,转换之后得到的是NaN。var n1="abc123"; var n2=parseFloat(n1);//NaN

★★小数类型的字符串,转换之后得到的是原数字。var n1="123.23"; var n2=parseFloat(n1);//123.23

 

转布尔类型

★数字和字符串转完之后为true。

★undefined、null、0转完之后为false.

var n1=123; var n2=Boolean(n1);//true

var n1="123"; var n2=Boolean(n1);//true

var n1="0"; var n2=Boolean(n1);alert(n2);//true

var n1; var n2=Boolean(n1);//false

var n1=null; var n2=Boolean(n1);//false

var n1=0; var n2=Boolean(n1);//false

<script>
  //var a=new Array(-12,34,56,88,32,"aa","-34.33","-34.34",12.23);
  /*var a=new Array(prompt("请输入数字"));
  document.write(a);*/
  var b=prompt("请输入要比较的数,用\",\"号隔开");
  var a=new Array();
  a=b.split(",");
  // for(var j=0;j<a.length;j++){
  //   document.write(a[j]);
  // }
  alert(typeof(a)+" JS数组本质是对象啊!!");//本质是对象 PHP数组就是数组,没有属性(比如length)
  document.write(a+"<br>");
  console.log(a+"<br>");
  var max=parseFloat(a[0]);
  //document.write(max);
  var maxaddress=0;
  var min=parseFloat(a[0]);
  var minaddress=0;
  
  for(var i=0;i<=a.length;i++){
   var shu=parseFloat(a[i]);
   if(shu>max){
    max=shu;
    maxaddress=i;
   }
   if(shu<min){
    min=a[i];
    minaddress=i;
   }
  }
  document.write("最大数为"+max+"位置为第"+(maxaddress+1)+"个"+"<br>");
  document.write("最小数为"+min+"位置为第"+(minaddress+1)+"个");
 </script>
4. Das Obige wird von JS verarbeitet, mein Zweck ist es, JS+PHP+HTML zu verknüpfen.

PHP kann nicht direkt mit dem Frontend interagieren, das heißt, es kann das nicht direkt abrufen Vom Benutzer eingegebener Wert, muss aber das HTML-Formular

JS-Daten an PHP übergeben. Sie können AJAX verwenden, aber ich werde heute darüber sprechen. Mal sehen, ob es eine Möglichkeit gibt.

1. Erstellen Sie ein HTML-Formular:

2. JS übergibt Werte an HTML:
<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 
</head>
<body>
 <form action="deal.php" method="post">
 请输入数字:<input type="text" id="shu" name="shuzi" value="">
 <input type="submit" value="提交">
 </form>
 
</body>
</html>

Hier besteht eine Gefahr, wenn JS-Code geschrieben wird Im Header von HTML wird ein Fehler mit der Meldung
 <script type="text/javascript">
  var a=prompt("请输入数字");
  document.getElementById("shu").value=a;
 </script>

Uncaught TypeError: Cannot set property 'value' of null gemeldet. Aufgrund der Browser-Analysereihenfolge beginnt der Browser jedoch mit der Analyse von HTML, wenn der Browser JS analysiert (wenn die Zahleneingabe abgeschlossen ist). JS weist den Wert von Text zu, aber es wird später von HTML analysiert, dass der Wert NULL ist. Versuchen Sie also, den JS-Code später so weit wie möglich zu analysieren . Dann gebe ich Ihnen den Wert. (Detaillierte Analyse der spezifischen Situation, nicht unbedingt der gesamte JS-Code ist im Header)

Okay, HTML hat den Wert übergeben, schauen Sie sich jetzt PHP an

Hier geht es vor allem darum, sich „explosive“ (den String in ein Array aufteilen) und „count“ (Anzahl der Arrays ermitteln)

anzusehen und auf die
<?php
header("Content-type:text/html;charset=utf-8");
$a=$_POST[&#39;shuzi&#39;];
//var_dump($a);
$b=explode(&#39;,&#39;,$a);
for($i=0;$i<count($b);$i++){
 echo $b[$i];
}
var_dump($b);

$max=$b[0];
$maxaddress=0;
for($j=0;$j<count($b);$j++){
 if($b[$j]>$max){
  $max=$b[$j];
  $maxaddress=$j;
 }

}
echo "最大值是".$max."<br>";
echo "位置为第".($maxaddress+1)."个";


?>
Typkonvertierung

zu achten Problem. Sie können es später hinzufügen oder selbst schreiben >

Das obige ist der detaillierte Inhalt vonJS+PHP implementiert ein detailliertes Beispiel für die Anzeige des Maximalwerts und der Position, nachdem der Benutzer eine Zahl eingegeben hat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn