课堂笔记---JavaScript简介

JavaScript简介
JavaScript是互联网上最流行的脚本语言,这门语言可用于HTML和web,
更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备.
JavaScript 是脚本语言
JavaScript 是一种轻量级的编程语言。
JavaScript 是可插入HTML页面的编程代码。
JavaScript 插入HTMl 页面后,可有所有的现代浏览器执行
JavaScript 用法
1、引用JS外部文件;
2、位于HTMl页面中(在HTML中的脚本必须位于标签之间)
脚本可被放置在HTML 页面的 和 部分中

会告诉 JavaScript在何处开始和结束。 之间的代码行包含了 JavaScript;

提示: 那些老旧的实力可能会在

var mysum, _mycha, $numal;
1-5 变量声明
声明变量语法:var 变量名;
var mysum;一次声明一个变量
var mysum, mynum;一次声明多个变量
注意:变量也可以不声明,直接使用,但为了规范,需要先声明,后使用
1-6 变量赋值
var mynum=5;//声明变量mynum并赋值
注:这里"="号的作用是给变量赋值,不是等于号。

var str1 = 234;//str1 为数值类型s
var str2 = “stringstring”;//str2 为字符串
var str3 = true;//str3为boolean类型
1-7JavaScript-判断条件语句(if…else)
if…else语句是在指定的条件成立时执行代码,
在条件不成立时执行else后的代码

2-1JavaScript-输出内容(document.write)
document.write()可用于直接向HTML输出流写内容。
简单地说就是直接在网页中输出内容
var mychar = “hello”,mystr = “world”;
//document.write(“hello world” +"
";//第一种:直接输出内容
document.write(mychar + mystr + “
”;//第二种:通过变量输出内容
//document.write(“大家好!” + mychar + mystr + ““JavaScript”);第三种:输出多项内容,内容之间用+号连接。
//document.write(“

this is a p

”);第四种:输出HTMl标签,并起作用,标签使用”"括起来
//document.write(“asdfasd”);
2-2 警告 alert()消息对话框。
注意:a、在点击对话框“确定”
3-1什么是数组?
同类型数据的集合就是数组;
数组:声明,赋值,获取值
数组的声明:直接声明,声明并确定长度,声明并赋值
索引、第二元素myarr[1]、myarr.length数组长度

数组是一个值的集合,每个值都有一个索引号,从0开始,
每个索引都有一个相应的值,根据需要添加更多数值。

3-3 数组赋值
数组的表达方式:
第一步:创建数组var myarr=new Array();
第二步:给数组赋值
myarr[1]=“张三”;
myarr[2]=“李四”;
3-6 数组属性length
//var count = myarr.length;
3-7 二维数组
一维数组的表示:myarray[]
二维数组的表示:myarray[]

  1. 二维数组的定义方法一
    var myarr=new Array(); //先声明一维
    for(var i=0;i<2;i++){ //一维长度为2
    myarr[i]=new Array();//再声明二维
    for(var j=0;j<3;j++){ //二维长度为3
    myarr[i][j]=i+j; //赋值,每个数组元素的值为i+j
    }
    }
    2、二维数组的定义方法二1:直接定义并且初始化,这种遇到数量少的情况可以用
    var myarr = [[2,4,5],[3,5,6]];

一、清空数组
var ary = [1,2,3,4];
ary.splice(0,ary.length);//清空数组
document.write(ary);//输出[],空数组,即被清空了
二、删除数组元素
var ary = [1,2,3,4];
ary.splice(0,2);//起始索引,删除元素的个数
document.write(ary);
三、js删除数组几种方法
var arr = [‘a’,‘b’,‘c’];
若要删除其中的’b’,有两种方法:
1、delete方法:delete arr[1]
这种方式数组长度不变,此时arr[1]变为undefined了,但也有好处
原来数组的索引也不变,此时要变历数组元素可以采用,这种遍历方式跳过其中undefined的元素

 1、if(条件){条件成立才执行代码}

 2、if (条件){条件成立才执行代码}
     else {条件不成立才执行代码}
  
 3、多重
     if (条件1){条件1成立才执行代码}
     else if (条件2){
       条件2成立才执行代码}
     else {}
       …
      else if (条件n){
       条件n成立才执行代码}
     else {
         条件1、2至n不成立才执行代码

}
4 多种选择(Switch)
语法说明:
switch必须赋初始值,值与每个case值匹配。满足执行该case后的所有语句
,并用break语句来阻止运行下一个case。如所有case值都不匹配,执行default后的语句。
4-5重复重复 (for循环)和while(反反复复)
for语句结构
for(初始化变量;循环条件;循环迭代){
循环语句;}
4-7 来来回回(do…while循环)
至少执行一次。先执行,后判断,如果条件为真,继续循环。
do{
循环语句}
while(判断条件)
var str=3;
do {
str=str+1;
document.write(str);
}
while(str>5)
总结: for 和 while 都是先判断条件,再执行方法体;
do…while无论条件是否成立都执行一次,先执行,后判断

4-8 退出循环break
在for、do while、while循环中使用break语句退出
当前循环,直接执行后面的代码。
for(初始条件;判断条件;循环后条件值更新){
if(特殊情况)
{break;}
循环代码
}
4-9 继续循环continue
continue的作用是仅仅跳过本次循环,而整个循环体继续执行
for(初始条件;判断条件;循环后条件值更新){
if(特殊情况)
{continue;}
循环代码
}
区别:break 跳出整个循环 continue跳出本次循环

5-2 定义函数
   一、 function 函数名(){
       函数体;      
          }
       函数名();
   二、

   

7-4 返回/设置时间方法
get/setTime() 返回/设置时间,单位毫米数。
格式:“yyyy-MM-dd HH:MM:SS”
function get.NowFormatDate(){
//声明一个日期内置对象
var date = new Date();
//声明符号
var seperator1="-";
var seperator2=":";

var year = date.getFullYear();//年
var month = date.getMonth()+1;
var strDate = date.getDate();
var hours = date.getHours();
var Minute = date.getMinute();//分
var Second = date.getSeconds();//秒

if (month>=1 && month <=9{
 month = "0" + month;//01
}
if (strDate>=1 && strDate<=9{
 strDate = "0" + strDate;
  }
 var enddate = year +seperator1+month+seperator1+strDate+"\t"
  hours+seperator2+Minute+seperator2+Second;
  return enddate;//返回日期

}
document.write(getNowFormatDate());//调用函数
7-5 String 字符串对象
var mystr=“I Love JavaScript!”
定义mystr字符串后,可以访问它的属性和方法。
var mystr = “I Love JavaScript!”;
var count = mystr.length;//字符串属性
alert(count);
7-6 chartAt()方法
语法:stringObject.chartAt(index)

 var str = "I Love JavaScript!";
 var char = str.charAt(4);//v
 document.write("
"+char);

7-7返回指定的字符串首次出现的位置
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置(索引)。
语法:stringObject.indexOf(substring,startIndex)
参数说明:
substring 必须参数,规定需检索的字符串值
startpos 可选整数参数,规定在字符串中开始检索的位置。
合法取值是0到stringObject.length-1,
若省去该参数,则将从字符串的首字符串开始检索。
(1)当字符不存在返回索引-1
(2)下标为6的位置开始检索,返回索引9(因为是返回的数组的索引)
7-8split()方法将字符串分割为字符串数组,并返回此数组
语法:stringObject.split(separator,limit)
参数说明:separator必须参数,从该参数指定的地方分割stringObject
limit可选参数,分割次数,如果设置参数,返回字符串不会多于这个参数
指定的数组,如果无参数,则不限制分割次数。
注意:如果把字符串("")用作separator,那么stringObject中每个字符之间会被分割
7-9 提取字符串substring()
语法:stringObject.substring(startIndex,stopIndex)

7-10 提取指定书目的字符substr()
语法:stringObject.substr(startIndex,length)

 Math对象属性
   *Math 对象属性
       属性	                描述
        E	    返回算术常量 e,即自然对数的底数(约等于2.718)。
        LN2	    返回 2 的自然对数(约等于0.693)。
        LN10	返回 10 的自然对数(约等于2.302)。
        LOG2E	返回以 2 为底的 e 的对数(约等于 1.414)。
        LOG10E	返回以 10 为底的 e 的对数(约等于0.434)。
        PI	    返回圆周率(约等于3.14159)。
        SQRT1_2	返回返回 2 的平方根的倒数(约等于 0.707)。
        SQRT2	返回 2 的平方根(约等于 1.414)。*/
    /*Math 对象方法
       方法	         描述
        abs(x)	     返回数的绝对值。
        acos(x)	     返回数的反余弦值。
        asin(x)	     返回数的反正弦值。
        atan(x)	     以介于 -PI/2 与 PI/2 弧度之间的数值来返回 x 的反正切值。
        atan2(y,x)	 返回从 x 轴到点 (x,y) 的角度(介于 -PI/2 与 PI/2 弧度之间)。
        ceil(x)	     对数进行上舍入。
        cos(x)	     返回数的余弦。
        exp(x)	     返回 e 的指数。
        floor(x)	 对数进行下舍入。
        log(x)	     返回数的自然对数(底为e)。
        max(x,y)	 返回 x 和 y 中的最高值。
        min(x,y)	 返回 x 和 y 中的最低值。
        pow(x,y)	 返回 x 的 y 次幂。
        random()	 返回 0 ~ 1 之间的随机数。
        round(x)	 把数四舍五入为最接近的整数。
        sin(x)	     返回数的正弦。
        sqrt(x)	     返回数的平方根。
        tan(x)	     返回角的正切。
        toSource()	 返回该对象的源代码。
        valueOf()	 返回 Math 对象的原始值。*/


    1.1数组连接concat()
  arrayObject.concat(array1,array2,...,arrayN)
    1.2 指定分隔符连接数组元素join()
     语法:arrayObject.join(分隔符)
        注意:返回一个字符串,该字符串把数组中的各个元素串起来,用<分隔符>置于元素与元素之间。这个方法不影响数组原本的内容。 我们使用join()方法,将数组的所有元素放入一个字符串中 */
     3数组排序sort()
    sort()方法使数组中的元素按照一定的顺序排列。
        语法:arrayObject.sort(方法函数)
      1、计时器
       setInterval()/clearInterval()
       setTimeout()/clearTimeout()
        1s=1000ms

     history对象
      back()前
      forward()后
      go()某个
  
        Location对象
        语法:Location[属性|方法]
       GreateElement
       getAttribute增加文本属性
       innerHTML增加文本内容


  9-1插入节点appendChild()
   语法:appendChild(newnode)
     参数:newnode:指定追加的节点
      var parentnode = document.getElementById("test");
      var newnode = document.createElement("li");
      newnode.innerHTML = "css";
      parentnode.appendChild(newnode);

   AJAX - 创建 XMLHttpRequest 对象
  1、variable=new ActiveXObject("Microsoft.XMLHTTP");
  2,、var xmlhttp;
     if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
       xmlhttp=new XMLHttpRequest();
       }
      else
      {// code for IE6, IE5
     xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }

AJAX向服务器发送请求
xmlhttp.open(“GET”,“test1.txt”,true);
xmlhttp.send();

    jQuery选择器
     1、#//id选择器
     2、.//类选择器
     3、*//全部选择器
     4、li//元素选择器   
     5、层级选择器 
  $(document).ready(function(){
          
         });


     attr()有4个表达式
1、attr(传入属性名):获取属性的值===js=getAttribute
2、attr(属性名,属性值):设置属性的值==setAttribute
3、attr(属性名,函数值):设置属性的函数值
4、attr(attributes):给指定元素设置多个属性值,即:attributes={属性名一:“属性值一”,属性名二:“属性值二”,...}

     removeAttr()删除方法
     语法:.removeAttr(attributeName)

      $("#demo").attr("class","div-style");//设置class属性,值div-style
      $("#demo").removeAttr("name");//移出name属性
    
      .html处理的是元素内容,.text处理的是文本内容
      .html只能使用在HTMl文档中,.text在HTML和XML文档中都能使用
    
      新增类
  1、 .addClass(className):为每个匹配元素所增加的一个或多个样式名
  2、.addClass(function(index,currentClass));这个函数返回一个或更多用空格隔开的要增加的样式名
   .addClass()方法不会替换一个样式类名。只是简单添加一个样式类名到元素上

   一、jQuery提供的存储接口
     jQuery.data(element,key,value)//静态接口,存数据
            参数说明:element:要关联数据的DOM对象
                       key:储存的数据名
                       value:将要储存的任意数据
     jQuery.data(element,key)//静态接口,取数据
           参数说明:element:要查询数据的DOM对象
                      key:储存的数据名
      .data(key,value)//实例接口,存数据(必需。规定要设置的数据的名称,必需。规定要设置的数据的值。)
        参数说明:key:储存的数据名
                   value:将要储存的任意数据
        .data(key)//实例接口,取数据
                参数说明:key:储存的数据名


     6217975810001350484
    
      删除DOM节点
    1、empty()删除匹配的元素集合中所有的子节点(删除子集)
    2、remove([expr])从DOM中所有匹配的元素。(删除子集和本身)
    3、detach([expr])DOM节点删除之保留数据的删除操作detach()

   get直接暴露在URL上/post隐藏发送。。。。通过btn来提交
   action/method  
   jQuery.ajax({});
   type:类型,"POST"或"GET",默认值为“GET”
   url:发送请求的地址
   async:设置异步,(默认:true)默认设置下,所有请求均为异步。
   如果需要发送同步请求,请将此选项设置为false。注意,同步请求将锁住浏览器,用户其他操作必须等待请求完成才可以执行。
   data:是一个对象,连同请求发送到服务器的数据
   dataType:预期服务器返回的数据类型,如果不指定,jQuery将自动根据http包MIME信息来判断,一般我们采用json格式,可以设置”json“
   success:是一个方法,请求成功后的回调函数,转入返回后的数据,以及包含成功代码的字符串
   error:是一个方法,请求失败是调用此函数,转入XMLHttpRequest对象

你可能感兴趣的:(JavaScript,JavaScript课堂笔记)