首页 > 代码库 > Javascript基础

Javascript基础

Javascript有以下三个部分组成:

  • 核心 ECMAScript
  • 文档对象模型DOM:Document object model(整合js,css,html)
  • 浏览器对象模型BOM:Broswer object model(整合js 和浏览器)

JS的引入方式:

  1. 直接编写:
      <script>
        
        altert(‘hello world‘)
    </script>
  2. 导入文件
     <script src="http://www.mamicode.com/hello.js"></script>

JS的变量、常量和标识符:

  1. 变量:全部使用var关键字;(注:变量如果只声明未赋值,打印出    undifind)
    1. 声明变量时,如果不用var,则表示它是全局变量
    2. 变量命名,首字符只能是字母,下划线,$美元符 三选一余下的字符可以是下划线、美元符号或任何字母或数字字符且区分大小写,x与X是两个变量 

    3. 命名规范:驼峰形 camel  var myTestValue 或 MyTestValue
                     Passcal: 变量类型的简称+大驼峰命名
  2. /*  多行注释
     */
    // 单行注释
    // 变量先声明再使用.每条命令用分号隔开
    var  i;
    i = 3;
    var j =3;
    var name=‘egon‘, age=25; //一行声明多个变量
  3. 常量:直接在程序中出现的数据值
  4. 标识符:
    1. 由不以数字开头的字母、数字、下划线(_)、美元符号($)组成
    2. 常用于表示函数、变量等的名称
    3. 例如:_abc,$abc,abc,abc123是标识符,而1abc不是
    4. JavaScript语言中代表特定含义的词称为保留字,不允许程序再定义为标识符技术分享

JS的数据类型:

基本数据类型:number;string;boolean;null;undefind 

Undefind :
  • 当变量只声明未赋值的时候,得到undefind;
  • 函数没有返回值时,默认返回undefined (类似python里函数默认返回none一样)

引用数据类型:object

JS的运算符:

算术运算符:
    +   -    *    /     %       ++        -- 
 x++  =  ++x   =    x+=1   
var x = 10;
var ret = x++;   x++ 先赋值再计算
var ret1 = ++x;  ++x 先计算再赋值
比较运算符:
    >   >=   <    <=    !=    ==    ===   !==
===全等于,值和类型都相等; == 等性运算,只判断值是否相等
NaN:属于number类型,当遇到将字符串转换成数字无效时,返回NaN
js是弱类型定义语言,可以直接将字符串转换为数字。
技术分享
等性运算符:执行类型转换的规则如下:

如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。 
如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。 
如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。 
如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。 
在比较时,该运算符还遵守下列规则:

值 null 和 undefined 相等。 
在检查相等性时,不能把 null 和 undefined 转换成其他值。 
如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。 
如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。 
等性运算规则
逻辑运算符:
     && 与  ||或   !非

赋值运算符:
    =  +=   -=  *=   /=

字符串运算符:
    +  连接,两边操作数有一个或两个是字符串就做连接运算

js的流程控制
  • 顺序结构:
        <script>
            console.log(“星期一”);
            console.log(“星期二”);
            console.log(“星期三”);
        </script>
  • 分支结构:
    • if else     if (条件表达式){执行语句}      Else if (条件表达式) {执行语句}           Else {实现语句}
      var num=67;
      if (num>90){alert(‘优秀‘)}
      else if ( 80<=num<=90){alert(‘良好‘)}
      else {alert(‘及格‘)}
    • Switch case
      var week=5;
      switch (week){case 1:console.log(‘星期一‘);break;
                    case 2:console.log(‘星期二‘);break;
                    case 3:console.log(‘星期三‘);break;
                    case 4:console.log(‘星期四‘);break;
                    case 5:console.log(‘星期五‘);break;
                    case 6:console.log(‘星期六‘);break;
                    case 7:console.log(‘星期日‘);break;
                    default:console.log(‘非法输入‘)
                      }
  • 循环结构----
      Break:终止整个循环
      Continue:终止单次循
    • for循环---条件循环
    • for(var i=0;i<10;i+=1){alert(‘ok‘)}
    • for循环---遍历循环
      var arr = [111,222,333];
      for (var i in arr){
      console.log(i,arr[i])}
    • while循环 
      var a=0;
      var sum=0;
      while(a<100){a+=1;sum+=a;console.log(b)}

异常处理:

* try {//这段代码从上往下运行,其中任何一个语句抛出异常该代码块就结束运行}
* catch (e) {// 如果try代码块中抛出了异常,catch代码块中的代码就会被执行。   //e是一个局部变量,用来指向Error对象或者其他抛出的对象}
* finally {//无论try中代码是否有异常抛出(甚至是try代码块中有return语句),finally代码块中始终会被执行。}

JS中的对象:

  1. String 对象
    技术分享
    //  创建字符串对象
        s=‘hello world‘;
        s1 = new String(‘hello world‘);
    
    //    字符串对象的属性和函数
        console.log(typeof s,typeof s1);  //查看类型
        alert(s1.length); //求长度
        alert(s1.toLowerCase());//转成小写,相当于python里的lower()
        alert(s1.toUpperCase());//转成大写,相当于python里的upper()
            alert(s1.trim());//去两边的空格和换行符,相当于python里的strip()
    //字符串查询方法:
        alert(s1.charAt(4)); //查看索引4的值 相当于python的s[4]
        alert(s1.indexOf(‘e‘)); //查看值对应的索引,相当于python的index(),默认从左开始找
        alert(s1.lastIndexOf(‘d‘));//查看值对应的索引,从右开始找
        alert(s1.match(‘world‘));//match 匹配出相应的内容,world
        alert(s1.search(‘world‘));//search 匹配出字符串的首字母的位置索引
        alert(s1.substr(1,4)); // substr(start,length)
            
        alert(s1.substring(1,4));// substring(start,end) 切片
        alert(s1.slice(1,4));//slice(start,end) 和substring 功能相同,切片
            
        alert(s1.concat(‘mona‘));//concat 字符串拼接
    string 对象

     

 

Javascript基础