javaScript基础—imooc

来源:互联网 发布:中国软件协会庐山 编辑:程序博客网 时间:2024/06/06 03:31

1、     Js基础

1.1     运算符

算术操作符(+-*/)

比较操作符(<>>=<=)

逻辑操作符(&&||、!)

注意: “=”操作符是赋值,不是等于。

+JS中可以表示字符串的连接和数学运算

1.2 自加一,自减一( ++和- -)

mynum = mynum + 1;//等同于mynum++

mynum = mynum - 1;//等同于mynum—

1Number+Number输出:Number(数字加数字,输出数字)
2
Number+String输出:String(数字加字符串,输出字符串)
3
Boolean转换成数01,支持数字运算
4
null转换成字符串“null”,逻辑运算的“false”或数字运算“0”
附:
如果是字符串,使用String(),数字使用Number();
比如:jq3=Number("33")+22;输出的是55,而不是“3322”
jq3=Number(22)+"33"
;或者jq3=Number(22)+String(33);输出的是“2233”,不是55

1.2逻辑与操作符

b>a && b<c    //“&&”是并且的意思, 读法"b大于a"并且" b小于c "两边值同时满足(同时为真),整个表达式值才为真
b>a || b<c    //“||”是或的意思         当两个条件中有任一个条件满足,整个表达式成立
逻辑非操作符:"!"是逻辑非操作符,也就是"不是"的意思,非真即假,非假即真

操作符之间的优先级(高到低):

算术操作符比较操作符逻辑操作符 → "="赋值符号

S中变量声明分显式声明和隐式声明

var i=100;  //显示

 

1

i=100;  //隐式

在函数中使用var关键字进行显式申明的变量是做为局部变量,而没有用var关键字,使用直接赋值方式声明的是全局变量。

当我们使用访问一个没有声明的变量时,JS会报错。而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量,这一点一定要注意。

a++是先执行表达式后再自增,执行表达式时使用的是a的原值。
++a
是先自增再执行表达示,执行表达式时使用的是自增后的a

2、       数组

1注意:数组每个值有一个索引号,从0开始。

我们还可以用简单的方法创建上面的数组和赋值:

第一种方法:

var myarray = new Array(66,80,90,77,59);//创建数组同时赋值

第二种方法:

 var myarray = [66,80,90,77,59];//直接输入一个数组(称字面量数组

 

 

3、循环语句

1、

Switch必须赋初始值,值与每个case值匹配。满足执行该 case后的所有语句,并用break语句来阻止运行下一个case。如所有case值都不匹配,执行default后的语句。

var myweek =13;//myweek表示星期几变量

switch(myweek)

{

 case 1:

 case 2:

 document.write("学习理念知识");

 break;

 case 3:

 case 4:

 document.write("到企业实践");

 break;

 case 5:

 document.write("总结经验");

 break;

 default:

 document.write("周六、日休息和娱乐");

}

2               assets/views/mvc/login_content.js

 

 

4、Onclick等事件

事件响应网页交互,JavaScript 创建动态页面。事件是可以被 JavaScript侦测到的行为。

网页中的每个元素都可以产生某些可以触发 JavaScript函数或程序的事件。

3               

4         

5          onmouseover="message()"

6                

4.1编程练习

使用JS完成一个简单的计算器功能。实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除。

 

<!DOCTYPE html>

<html>

 <head>

  <title> 事件</title> 

  <script type="text/javascript">

   function count(){      

    //获取第一个输入框的值

         //获取第二个输入框的值

         //获取选择框的值

         //获取通过下拉框来选择的值来改变加减乘除的运算法则

    //设置结果输入框的值

    var a = document.getElementById("txt1").value;

    var b = document.getElementById("txt2").value;

    var sel = document.getElementById("select").value;

    var d ="";  

       switch(sel){

           case "+":

           d=parseInt(a)+parseInt(b);

           break;

           case "-":

           d = a-b;

           break;

           case  "*":

           d = a*b;

           break;

           default:

           d = a/b;                 

       }

       document.getElementById("fruit").value = d;

   }

  </script>

 </head>

 <body>

   <input type='text' id='txt1' />

   <select id='select'>

                   <option value='+'>+</option>

                   <option value="-">-</option>

                   <option value="*">*</option>

                   <option value="/">/</option>

   </select>

   <input type='text' id='txt2' />

   <input type='button' value=' = ' onclick="count()"/> <!--通过 = 按钮来调用创建的函数,得到结果-->

   <input type='text' id='fruit' />  

 </body>

</html>

 

 

5、      js内置对象

5.1 JavaScript中的所有事物都是对象,如:字符串、数值、数组、函数等,每个对象带有属性方法

对象的属性:反映该对象某些特定的性质的,如:字符串的长度、图像的长宽等;

对象的方法:能够在对象上执行的动作。例如,表单的提交”(Submit),时间的获取”(getYear)等;

JavaScript 提供多个内建对象,比如 StringDateArray等等,使用对象前先定义,

对象和方法解释:对象相当于一个人,属性就是性别,胖瘦,身高,是必须通过该对象来获取的【值】;

方法是这个人可以干什么,吃饭,看电视,逛街,会运动,跳舞等,是必须通过该对象才能执行的【行为】。

5.2 Date 日期对象

定义一个时间对象 :

月份是011 需要注意

var Udate=new Date(); 

注意:使用关键字newDate()的首字母必须大写。 

getDay() 返回星期

例子:1、显示今天星期几? 设置日期,显示星期几?比如2016年3月29 周二

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>获得星期</title>

<script type="text/javascript">

  //var mydate=new Date();

 var mydate=new Date(2016,2,29);

  var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

  var mynum = mydate.getDay()

   document.write(":" + mynum+"<br>");

  document.write("今天是:" + weekday[mynum]);

   document.write("今天是:" + weekday[mynum]);

</script>

</head>

<body>

</body>

</html>

5.3 String 字符串对象

  var a=  message.toUpperCase();  // 将字符串小写字母变为大写

   var a = message.toLowerCase();  //将字符串大写字母变为小写

返回指定位置的字符   stringObject.charAt(index)

1.     字符串中第一个字符的下标是 0。最后一个字符的下标为字符串长度减一(string.length-1)。一个空格也算一个字符。

返回指定的字符串首次出现的位置stringObject.indexOf(substring, startpos)

var str="I love JavaScriptv!v"

   document.write(str.indexOf("I") + "<br />");

  document.write(str.indexOf("v") + "<br />");

  document.write(str.indexOf("v",10));  输出 0 ,4 ,17

document.write(str.indexOf("v",10));  输出9

 

字符串分割split()

提取字符串substring()

substring方法用于提取字符串中介于两个指定下标之间的字符

substring(start,end)

开始和结束的位置,从零开始的索引

substr方法用于返回一个从指定位置开始的指定长度的子字符串。

substr(start [, length ])

如:

1

2

3

4

var ss,tt;

var mystr="Hello World!";

aa =  mystr.substr(5);   // world!

ss = mystr.substr(6, 5);  //6号字符后面取5个字符

tt = mystr.substring(6, 11);//取第6到第11之间的字符

5.4 Math对象

 

向上取整ceil()  Math.ceil(0.8) 输出1

向下取整floor()

四舍五入round()

 document.write(Math.round(2.5)+ "<br>");

 document.write(Math.round(0.49)+ "<br>");

 document.write(Math.round(-6.6)+ "<br>");

输出3;0;-7

随机数 random()

random() 方法可返回介于 0 ~ 1大于或等于 0 但小于 1 )之间的一个随机数。

使用random()随机取得0-10之间的数值。使用round()对数值进行四舍五入。

var a ="";

a = Math.random()*10;

b = Math.round(a);

 document.write(a+"<br>");

 document.write(b);

 

5.5 数组

数组定义的方法:

1. 定义了一个空数组:

var  数组名= new Array();

2. 定义时指定有n个空元素的数组:

var 数组名 =new Array(n);

3.定义数组的时候,直接初始化数据:

var  数组名 = [<元素1>, <元素2>, <元素3>...];

我们定义myArray数组,并赋值,代码如下:

var myArray = [2, 8, 6]; 

 

数组连接concat()

指定分隔符连接数组元素join()

var myarr = new Array(3);

  myarr[0] = "I";

  myarr[1] = "love";

  myarr[2] ="JavaScript";

 document.write(myarr.join("."));

颠倒数组元素顺序reverse()

选定元素slice()  1.返回一个新的数组,包含从 start end(不包括该元素)的 arrayObject中的元素。

一个数组,大小排序

   function sortNum(a,b) {

        return a-b;

   }

var myarr = newArray("80","16","50","6","100","1");

document.write(myarr.sort(sortNum));

//升序,如降序,把“a - b”该成“b - a”

 若返回值<=-1,则表示 A 在排序后的序列中出现在 B之前。
 
 
若返回值>=1,则表示 A 在排序后的序列中出现在 B之后。

= 不用管

题目:XXXXXXX星期X--班级总分为:81 ,平均分多少?
成绩:"小明:87; 小花:81; 小红:97; 小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"

 

 

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>系好安全带,准备启航</title>

 

<script type="text/javascript">

  //通过javascript的日期对象来得到当前的日期,并输出。

  var date = new Date();

  var a = date.getDay();

  var week = ["星期天 ","星期一","星期二","星期三","星期四","星期五","星期六"];

  document.write(date.getFullYear()+"年");

  document.write((date.getMonth()+1)+"月");

  document.write(date.getDate()+"日  ");

  document.write(week[a]+"<br>  "); 

 

  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

 var b = scoreStr.split(";")

 var sum = 0;

 for(var i=0;i<b.length;i++)

    {

      sum = sum + parseInt(b[i].slice(3));

    }

    var avg = sum /b.length;

  //从数组中将成绩撮出来,然后求和取整,并输出。

  document.write("--班级的总分为:"+sum+"<br>");

  document.write("--班级的平均分:"+avg+"<br>");

 

</script>

</head>

<body>

</body>

</html>

 

 

 

6、标题1

 

7、标题1

 

0 0