zoukankan      html  css  js  c++  java
  • javascript入门(1)

    Javascript认识(1)

    JavaScript 常见事宜

    JavaScript介绍

    JavaScript是一种直译式脚本语言,是一种动态型弱类型、基于原型的语言,内置支持类型。

    Javascript内容

    1. Js核心语法(ECMAScript 核心语法)

    2. Dom(Document Object model) 文档对象模型

    3. Bom (Browser object model) 浏览器对象模型

    Javascript书写位置

    代码需要写在script标签内,并且script标签可写在任何位置。

    这时就需要讨论script书写位置

    下面是常用的两种位置

    第一种

    书写于<head><body>之间,这时由于浏览器的预解析,JS代码会先于HTML解析,导致JS代码会有部分失效。

    这时我们就需要使用文档入口函数/文档就绪函数

    window.load = function() {
        /*
        *这里写你的JS代码即可
        */
    }
    

    第二种(推荐)

    书写于</body></html>之间。

    由于此地位于HTML最后端,所以不用去考虑预解析等事请,较为方便。

    变量

    变量是什么

    变量是一个临时存储数据的容器
    
    Tip:变量声明需要使用var(es6中 还可以用let)
    

    变量的命名规则

    1. 变量命名不能与关键字和保留字冲突

    2. 名字尽量能词能答意

    3. 设置名字可以使用中文(不要用

    4. 不能用以数字开头,变量名字里可以包括字母,数字,下划线,$.

    5. JS对于大小写敏感,可以使用小驼峰命名法

    变量提升

    在script标签中,一个变量声明及初始化后,变量声明部分会提升到script标签顶部
    

    数据类型

    数据类型可以分为两类:
    
    1. 原始数据类型(基础数据类型)
    2. 引用数据类型(对象类型)
    

    原始数据类型

    1. Number:数字类型

    2. String:字符串类型

    3. Boolean:布尔值

    4. Null: 空

    5. Undefined:未定义的

    6. Symbol:标识符(es6)

    Tip:使用typeof()可以查看数据类型

    Number类型

    parseInt(); 将内容变成整数形式
    parseInt('123abc') == 123 ;
    parseInt('123.1abc') == 123 ;
    
    parseFloat(); 将内容变成浮点型(小数)
    paresFloat('123abc') == 123 ;
    parseFloat('123.12abc')  == 123.12 ;
    
    Number类型里特殊形式 NaN

    NaN属于Number类型;
    他的特殊性:

    1. 自己不等于自己 
    2. 不等于任何一个值
    

    我们可以使用isNaN()来判断值是否为NaN

    Boolean类型

    以下的Boolean值全部为false,其余的全是true;
    1. Boolean('');
    2. Boolean(undefined);
    3. Boolean(null);
    4. Boolean(NaN);
    5. Boolean(0);
    6. Boolean(false);
    

    引用数据类型/对象定义

    1. Array :数组

    2. function :函数

    3. object:对象

    object类型

    object 又称 “无序列表” , “键值对” , “字典” , “哈希表” , “hash表” 等等。

    var obj = {
      name : 'zhangsan',
      age : 20 ,
      like : 'play'
      // key值 : value值
    }
    //调用方式
    console.log(obj.name);//打印出zhangsan
    console.log(obj['age'])//打印出20
    var a = 'like';
    console.log(obj[a]);//打印出play
    

    数据类型转换

    强制数据类型转换

    1. Number(); 变为数值

    2. String(); 变为字符串

    3. Boolean)(); 变为布尔值

    自动数据类型转换

    1. 数据类型不相同但是进行计算时

    2. 对非布尔值的数据求取布尔值

    3. 对非数值类型的数据使用一元运算符(+/-)

    自动类型转化规则:

    预期是什么类型的值,就调用该类型的转换函数。
    

    由于自动转化不确定性,而且不易除错,建议在预期为Boolean,Number,String的地方,使用转换方法函数进行显式转化.

    运算符

    数学运算符

    加  减  乘  除  求模(取余)  递增    递减   正  负  指数
    +   -   *   /      %        ++     --    +   -   **
    

    前置运算符(递增/递减在前),那么先将数值运算,在参加整体运算。

    后置运算符(递增/递减在后),先将数值参加整体运算,然后在递增/递减。

    赋值运算符

    赋值    加等    减等    乘等    除等    取余等  指数赋值
      =     +=      -=      *=      /=      %=      **=
    

    关系运算符

    值相等    不等    全等(值与类型全相等)      不全等
      ==      !=            ===                !==  
    

    逻辑运算符

      与      或      非
      &&      ||      !           
    

    三元运算符

    条件 ? 条件为真时执行的代码 :条件为假
    

    if,switch条件判断语句

    if条件判断

    写法

    //第一种
    if(条件){
      条件满足时执行的代码
    }
    
    //第二种
    if(条件){
      条件满足时执行的代码
    }else{
      条件不满足时执行的代码
    }
    
    //第三种 Tip:这里面的else if可以写无数个
    if(条件1){
      条件1满足时执行的代码
    }else if(条件2){
      条件2满足时执行的代码
    }else{
      以上条件都不满足时执行的代码
    }
    

    switch 判断语句

    写法

    switch(值){
      case  结果1 :
        符和结果1执行的代码;
        break;
      case  结果2 :
        符和结果2执行的代码;
        break;
      default :
        以上结果都不符合执行的代码;
    }
    //Tip: 在实际的使用当中,允许多个case共用一块代码
    

    if与switch的区别

    if语句多用于判断在某些区间内成立,某些区间不成立的条件

    switch语句只能用于判断在固定的值内的条件

    循环

    定义:主要能够帮助我们解决一些“重复性较高”的操作,并且“有规律可循”的操作

    用法:通过设定开始和结束条件,只要符和条件就会执行的代码片段

    for循环

    for(var i = 0 ; i < 10 ; i++ ){
      console.log('hello world');
    }//打印10遍hello world
    

    for in 循环

    仅限操作对象

    var arr = [1,4,8,9];
    for(var i in arr){
      console.log(arr[i]);//1 4 8 9
    }
    

    while循环

    只有条件为真时才能执行

    while(条件){
      条件为真时执行的语句
    }
    

    do...while循环

    不管条件是否为真,都会先运行一遍,然后在判断是否为真。

    do{
      代码
    }while(条件);
    

    循环中的关键字

    break

    作用:跳出当前循环

    continue

    作用:跳出当前那一轮循环。

  • 相关阅读:
    hbase存储优化
    cloudera manager下phoenix的安装
    Cloudera manager的服务安装以及spark升级到2.2
    redis学习总结
    kylin基础概念和基础性能优化
    mycat使用注意事项
    kylin2.0环境搭建
    ETL实践--kettle转到hive
    集成 SOLR 到 TOMCAT 中(傻瓜教程)
    局域网ip扫描
  • 原文地址:https://www.cnblogs.com/strongtyf/p/11790267.html
Copyright © 2011-2022 走看看