zoukankan      html  css  js  c++  java
  • JavaScript基础知识复习

    1,javascript是基于对象和事件驱动的,并有安全性能的脚本语言;

    2,javascript的特点:

    1)向HTML中添加交互事件;

    2)脚本语言,与java语法类似;

    3)解释性语言,边执行边解释;

    3,网页中引用javascript的三种方式:

    1)页面内添加script标签;

    2)引用外部js文件;

    3)直接写在HTML标签中;<input type="button" value="" onclick="javascript:alert("欢迎你");"/>

    4,变量的声明和赋值:

    1)可以先声明再赋值;

    2)边声明边赋值;

    3)不声明直接赋值;

    建议:变量不经声明容易出错,一般不推荐使用;

    5,数据类型:

    undefined,number(包括整型和字符型的),null,boolean,string(包括单引号和双引号的),

    undefined:表示不存在的值或尚未赋值的变量。对一个变量只声明不赋值,或者赋予一个不存在的属性值,都会使该变量的值为undefined;

    null:表示“什么都没有”的占位符,null和undefined的区别是:null表示该变量被赋予一个空值,undefined表示变量尚未被赋值;

    数值型数据类型还包括:特殊值Infinity (无穷大)和NaN(不是数值类型),

    Infinity:当一个数值或数值表达式的值超出了可表示的最小值的范围,将被赋值为-Infinity,所有的Infinity(或-Infinity)值都相等,并且infinity 与其他数值进行运算的结果仍为infinity。

    一个正数被0除,结果是Inifinity,一个负数被0除结果是-Infinity,而0/0的结果是undefined(NaN)

    NaN:  含义是“not a number”当一个undefined 表达式结果为数值型数据时,该数值型数据就是NaN值,如:0/0或对Infinity求正弦值时,或对Infinity与-Infinity进行相加时,结果都是NaN,使用isNaN()方法或让某个值与其自身相比较,可以确定一个只是否是NaN,NaN是唯一一个不可以可自身进行比较的值。

    基本类型和合成类型

    基本类型在内存中有固定大小,而合成类型(如对象,数组,函数等)则可以有任意长度;因此,不能将合成类型直接存储在关联每个变量的固定内存地址中,实际上存储的是对这个值的引用;

    如:数值型数据:

    var a = 3.14;

    var b =a;

    a = 4;

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

    document.write("b: " +b);              //b:3.14,b不随a的值的改变而改变

    然而:

    var a = [1,2,3];

    var b =a;                                        //此处赋给b的是对数组值的引用,不是数组本身,执行完这个后,就有了两个对数组的引用了

    a[0] = 99;

    document.write("a: " +a+<br>);     //a:99,2,3

    document.write("b: " +b);              //b:99,2,3             

    6,字符串对象:

    1)属性:

    字符串对象.length;

    2)方法:

    charAt(index); :返回指定为位置的字符;

    indexOf(str ,index);:返回某个指定的字符串str在字符串中首次出现的位置;

    substring(index1,index2):返回从index1到index2的子字符串,并且包括索引index1对应的字符,不包括index2对应的字符;

    split():将字符串分割为字符串数组;

    例:统计包含指定字符的字符串

     1 <!doctype html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>判断字符串中是否有指定字符</title>
     6 </head>
     7 <body>
     8     <script type="text/javascript">
     9         window.onload=function() {
    10             var count=0;
    11             var countArray = new Array("America","Greece","Britain","Canada","China","Egypt");
    12             document.write("在以下字符串中:"+"<br/>");
    13             for(var i in countArray){
    14                 document.write(countArray[i]+'<br/>');
    15                 if (countArray[i].indexOf('a')!= -1 || countArray[i].indexOf('A')!= -1 ) {
    16                     count++;
    17                     
    18                 };
    19             }
    20             document.write("共有"+count+"个字符串中有'a'或'A'");
    21         }
    22     </script>
    23 </body>
    24 </html>

    7,typeof运算符:检测变量的返回值类型;

    返回值如下:

    undefined,string,boolean,number,object(javascript中的对象,数组或null);

    8,数组:

    创建数组:var fruit=new Array(size);  //size是元素总数

    给数组赋值:

    1)var fruit=new Array("apple","orange","peach","banana");

    2)var fruit=new Array(4);

    fruit[0]="apple";fruit[1]="orange";fruit[2]="peach";fruit[3]="banana";

    访问数组:数组名[下标];

    9,数组的常用方法和属性:

    属性:length;设置或返回数组中元素的数目;

    方法:

    join():将数组中的所有元素放到以字符串里,然后以一个分隔符进行分隔;如座机号码;

    sort():将数组排序;

    push():向数组末尾添加一个或多个元素,并返回新的长度;

    10,break:终止之后的所有循环;

    continue:终止当前循环,继续下一次循环;  

    11,常用系统函数:

    parseInt("字符串"); 将字符串转换为整型数字;

    parseFloat("字符串"); 将字符串转换为浮点型数字;

    isNaN();用来检查参数是否为数字;

    常用的输入输出语句:

    alert();

    prompt("","");//prompt(""),

    使用字符串转换函数和常用的输入输出语句时注意,不能直接写成num=parseFloat(prompt("",""));

    12,匿名函数:即没有函数名;

    定义匿名函数:

    var showHello=function(count){  //没有函数名,类似于声明变量var showHello=变量值;

      for(var i=0;i<count;i++){

        document.write("hello world");

      }

    }

  • 相关阅读:
    微信小程序 添加卡券至微信卡券
    微信小程序 引入第三方字体
    小程序 生成条形码barcode.js
    Pycharm编辑器功能之自动导入模块
    Cannot open include file: 'libxml/xpath.h': No such file or directory
    怎么在32位windows系统上搭建爬虫框架scrapy?
    python2.7安装Twisted报Microsoft Visual C++9.0 required
    在windows下搭建爬虫框架,安装pywin32时出错?
    python如何通过pymongo连接到mongodb?
    python2.7.12自带pip吗?
  • 原文地址:https://www.cnblogs.com/RitaLee/p/6120562.html
Copyright © 2011-2022 走看看