您的位置 首页 技术

js基础知识

js基础概念 js的局部变量和全局变量 js的数据类型 var是弱数据类型, 但js是能识别他的数据类型的 <head> <meta charset="…

js基础概念

js的局部变量和全局变量

20200605191912364.png

js的数据类型

var是弱数据类型, 但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,'张三')" /><br />  <input type="button" name="" id="" value="调用了一个有返回值的按钮" onclick="test3('张三')" /><br /> </body>

方法覆盖

和Java不同,js中没有方法的重载,只有方法覆盖

只要方法名相同。无论是有多少个参数,js统一只会识别到最后一个方法(方法覆盖)

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

js数据类型的转换

虽然js只有一个var来描述变量(弱数据类型),但系统可以识别他的数据类型,还可以进行数据类型的转换

<script type="text/javascript">  function test(){   var x='12.3';   console.log("x的数据类型是:"+typeof(x));   var m=parseInt(x);   console.log("x转换后的数据类型是:"+typeof(m)+"值是:"+m);      var y='12.111';   console.log("y的数据类型是:"+typeof(x));   var m1=parseFloat(y);   console.log("y转换后的数据类型是:"+typeof(m1)+"值是:"+m1);      var z='3*4';   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='10';    var b='8';    console.log("b的值 "+b+"  b的数据类型转换成 "+typeof(b)+"  "+a)    /* =+ a先转换成number 再给a的值复制给b */    /* += 等价与 b+=a == b=b+a */   }

1.png

选择语句和循环语句

略:和java一样

js主要对象

window对象

时间间隔器

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

20200607094330610.png

数组的使用

<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]=['张三','李四','王五'];   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>

20200607102115302.png

字符串的基础操作

<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='192.168.0.1';   var ip_array=ip.split(".");   for (var i = 0; i < ip_array.length; i++) {    console.log(ip_array[i]);   }   /* 大小写转换 */   var b='abc';   console.log(b.toUpperCase());   var c='ABC';   console.log(c.toLowerCase());  } </script> <body>  <input type="button" value="字符串处理" onclick="test()"/> </body>

2.png

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('yyyy-MM-dd');   var stime=date.format('yyyy-MM-dd HH:mm:ss')   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>

4.png

推荐教程:《JS教程》

以上就是js基础知识的详细内容,更多请关注24课堂在线网其它相关文章!

本文来自网络,不代表24小时课堂在线立场,转载请注明出处:https://www.24ketang.cn/71000.html

为您推荐

返回顶部