>  기사  >  웹 프론트엔드  >  js 기본 지식

js 기본 지식

hzc
hzc앞으로
2020-06-08 16:26:522218검색

js의 기본 개념

js의 지역 변수와 전역 변수

js 기본 지식

js

의 데이터 유형은 약한 데이터 유형이지만 js는 해당 데이터 유형을 인식할 수 있습니다

<head>
  <meta charset="utf-8">
  <title></title>
  <script type="text/javascript">
   function abc(){
    var a=1;
    var b="张三";
    var c=true;
    var d=new Date();
    
    alert("a的数据类型:"+typeof(a));
    alert("b的数据类型:"+typeof(b));
    alert("c的数据类型:"+typeof(c));
    alert("d的数据类型:"+typeof(d));
   }
  </script>
 </head>
 <body>
  <input type="button" name="" id="" value="js的数据类型" onclick="abc()"/>
 </body>

js 메서드 정보

메서드 작성

<script type="text/javascript">
  function test(){
   console.log("不传参数");
  }
  function test1(a){
   console.log("传1个参数"+a);
  }
  function test2(a,b){
   console.log("传2个参数:" +a+"第二个参数:"+b);
  }
  function abc(a){
   console.log("这是在abc的方法的值:"+a);
   return a;
  }
  function test3(a){
   var m=abc(a);
   console.log("调用了别人的返回值的方法"+m)
  }
  
 </script>
 <body>
  <input type="button" name="" id="" value="不传参数的按钮" onclick="test()" /><br />
  <input type="button" name="" id="" value="传1个参数" onclick="test1(12)" /><br />
  <input type="button" name="" id="" value="传2个参数" onclick="test2(1,&#39;张三&#39;)" /><br />
  <input type="button" name="" id="" value="调用了一个有返回值的按钮" onclick="test3(&#39;张三&#39;)" /><br />
 </body>

메서드 적용 범위

Java와 달리 js에서는 메서드 오버로드가 없으며 메서드 이름이 동일하다면 메서드 재정의만

합니다. 매개변수가 아무리 많아도 js는 마지막 메소드(메소드 재정의)만 인식합니다

<head>
  <meta charset="utf-8">
  <title></title>
  
  <script type="text/javascript">
   function abc(a){
    //var name=&#39;张三&#39;;//在方法体内部的局部变量,只能自己用
    alert(&#39;这是第一个方法&#39;+a);
   }
   
   function abc(){
    alert(&#39;这是第二个方法&#39;);
   }
   
   function abc(){
    alert(&#39;这是真的&#39;);
   }
  </script>
 </head>
 
 <body>
  <!-- js中不会重载,只有方法覆盖啊 -->
  <input type="button"  value="方法重载和多态" onclick="abc(44)"/> 
  <!-- 输出:这是真的 -->
 </body>

js 데이터 유형 변환

js에는 변수(약한 데이터 유형)를 설명하는 var가 하나만 있지만 시스템은 다음을 수행할 수 있습니다. 데이터 유형을 식별하고 데이터 유형을 변환합니다.

<script type="text/javascript">
  function test(){
   var x=&#39;12.3&#39;;
   console.log("x的数据类型是:"+typeof(x));
   var m=parseInt(x);
   console.log("x转换后的数据类型是:"+typeof(m)+"值是:"+m);
   
   var y=&#39;12.111&#39;;
   console.log("y的数据类型是:"+typeof(x));
   var m1=parseFloat(y);
   console.log("y转换后的数据类型是:"+typeof(m1)+"值是:"+m1);
   
   var z=&#39;3*4&#39;;
   console.log("z的数据类型是:"+typeof(z)+"z的值是:"+z);
   var m2=eval(z);
   console.log("z计算后的数据类型是:"+typeof(m2)+"值是:"+m2);
   
   var l=true;
   console.log("l的数据类型是:"+typeof(l)+"l的值是:"+l);
   var m3=l.toString();
   console.log("l转换后的数据类型是:"+typeof(m3)+"值是:"+m3);
  }
 </script>
 <body>
  <input type="button" name="" id="" value="数据类型的转换"  onclick="test()"/>
  </body>

js의 연산 계산

js의 연산 규칙은 Java와 동일합니다(그러나 특히 주의: x=+y)

function abc(){
    var a=&#39;10&#39;;
    var b=&#39;8&#39;;
    console.log("b的值 "+b+"  b的数据类型转换成 "+typeof(b)+"  "+a)
    /* =+ a先转换成number 再给a的值复制给b */
    /* += 等价与 b+=a == b=b+a */
   }

js 기본 지식

Select 문 및 루프 문

원본: java

js 기본 개체

window 개체

Time 간격기

<script type="text/javascript">
   function test(){  
    console.log(&#39;test方法开始执行了&#39;);
    /* 参数: 执行的方法, 等待的时间(毫秒单位) */
    window.setTimeout("hello()",1000);
   }
   function hello(){
    console.log(&#39;hello&#39;);
   }
   function test1(){
    console.log(&#39;test1方法开始执行了&#39;);
    window.setInterval("hello()",1000);
   }
  </script>
 </head>
 <body>
  <input type="button" value="等待一定时间,再执行" onclick="test()" /><br />
  <input type="button" name="" id="" value="每间隔一定时间,反复执行" onclick="test1()"/>
 </body>

js 기본 지식

배열 사용법과 동일

<script type="text/javascript">
  function test(){
   /* 第一种声明方式 */
   var a=[1,2,3,4,5,6,7,8,9];
   for (var i = 0; i < a.length; i++) {
    console.log("当前数组的角标:"+i+"当前的值:"+a[i]);
   }
  }
  function test1(){
   /* 第二种声明方式 */
   var a=new Array();
   a[0]=[1,2,3];
   a[1]=[&#39;张三&#39;,&#39;李四&#39;,&#39;王五&#39;];
   a[2]=[2,5,1,3,6];
   for (var i = 0; i < a.length; i++) {
    for (var j = 0; j < a[i].length; j++) {
     console.log("当前数组的角标:"+i+", "+j+"当前位置的值:"+a[i][j]);
    }
   }
  }
  function test2(){
   /* join(分隔符) 将数组元素中加分割符号后串接并返回一个字符串 */
   var a=[1,3,2,9,7,8,5];
   console.log(a.join("*"));
   /* reverse() 将数组元素按照原先相反位置存放 */
   console.log("数组的取反:"+a.reverse());
   /* slice(始[,终) 返回一个子数组  (前包后不包)*/
   console.log(a.slice(1,4));
   /* sort() 按照字母排序 */
   console.log(a.sort());
  }
 </script>
 <body>
  <input type="button"  value="一维数组的遍历" onclick="test()"/>
  <input type="button"  value="二维数组的遍历" onclick="test1()"/>
  <input type="button"  value="数组的操作" onclick="test2()"/>
 </body>

js 기본 지식

기본 문자열 연산

<script type="text/javascript">
  function test(){
   var a="hello world";
   var index_a=a.indexOf("o");//第一个字母的位置
   var index_b=a.indexOf("p");//没有就返回-1
   console.log("o的角标位置:"+index_a);
   /* 字符截取(前包后不包) */
   var new_a=a.substring(1,3);
   console.log(new_a);
   /* 根据特定字符,格式化字符串 */
   var ip=&#39;192.168.0.1&#39;;
   var ip_array=ip.split(".");
   for (var i = 0; i < ip_array.length; i++) {
    console.log(ip_array[i]);
   }
   /* 大小写转换 */
   var b=&#39;abc&#39;;
   console.log(b.toUpperCase());
   var c=&#39;ABC&#39;;
   console.log(c.toLowerCase());
  }
 </script>
 <body>
  <input type="button" value="字符串处理" onclick="test()"/>
 </body>

js 기본 지식

js 시간 형식 지정

<script src="../js/dateFormat.js" type="text/javascript" charset="utf-8"></script>
 <script type="text/javascript">
  function test(){
   var date=new Date();
   console.log(date);
   //方法1:引入控件
   var sdate=date.format(&#39;yyyy-MM-dd&#39;);
   var stime=date.format(&#39;yyyy-MM-dd HH:mm:ss&#39;)
   console.log(sdate);
   console.log(stime);
   
   //方法2:
   var y=date.getFullYear();//年
   var mon=date.getMonth()+1;//月
   var d=date.getDate();//日
   var h=date.getHours();//时
   var m=date.getMinutes();//分
   var s=date.getSeconds();//秒
   var weeks=date.getDay();
   var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
   console.log(y+"年 "+mon+"月 "+d+"日  "+h+":"+m+":"+s+"  "+weekday[weeks])
  }
 </script>
 <body>
  <input type="button" value="日期处理" onclick="test()" />
 </body>

js 기본 지식

추천 튜토리얼: "JS Tutorial"

위 내용은 js 기본 지식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제