zhuhuiwen Front-end Dev Engineer

JavaScript基础回顾1

2016-09-10

9/10/2016 8:40:58 AM

JavaScript

  • 借鉴c语言的基本语法
  • 借鉴java的数据类型的内存管理
  • 借鉴Scheme语言,将函数提升到”第一等公民”(first class)的地位。
  • 借鉴Self语言,使用基于原型(prototype)的继承机制

##js组成##

  • ecmascript js语法标准
  • dom js操作网页上的元素api
  • bom js操作浏览器的部分功能的api

js特点

  • 简单易用 可以直接使用已封装的方法
  • 解释执行 js属于解释执行的语言
    • 解释执行
      • 代码会立即执行,不需要经过编译
    • 编译执行 -源码 编译(.dll) 计算机 执行的是dll文件
  • 基于对象
    • 对象的特点
      • 继承性
      • 封装性
      • 多态性

js使用范围

  1. 表单验证
  2. 网页特效的处理
  3. 游戏开发
  4. 服务器程序nodejs

js执行过程中的小原理

  • html页面中出现
  • 无论当前脚本是内嵌式还是外链式,页面的下载和渲染都必须停下来等待脚本的执行才能继续,这在页面的生命周期中是必须的。
  • 例如:
    • 通过外链式js文件查看加载速度

js书写位置

  1. 外联式
    1. 新建js文件
    2. 网页引入js文件
  2. 内嵌式写法
    1. 在网页中使用script标签设置代码
  • 书写位置特点
    • 内嵌式写法,推荐将js代码放到body标签之后去执行
      • 因为代码是从上往下执行的
    • 外联式写法
      • 推荐能将合并的js文件合并到一个js文件中访问
        • 加载速度问题

          js中输出消息的几种方式

            1. 在页面中以弹窗的形式显示消息alert(123)
            2. 在控制台中显示消息console.log(123)
            3. 在网页中显示消息document.write(123)
          
          1. 注意: 该方法内可以设置html标签
            1. 接收用户信息的方法prompt(“请输入您的工号”)
            2. 配合条件判断显示消息confirm(“您确定提交吗?”)

    注意: 在每一行完整的js代码结束后,请加上分号“;” 所有的特殊符号都是英文输入法的英文符号

变量(重点)

变量: 用来保存数据的容器。

  • 变量的定义: 通过关键字var+变量名==var age; //定义一个变量age
  • 变量的贬值: 通过等于号给变量赋值 age=18; //给变量赋值
  • alert(age); //查看值

变量

  • 变量一次只能保存一个值
  • 变量只能保存最后一次赋值的结果
  • 区分字母大小写

变量的命名规范

  1. 不能使用数字或是以数字开头定义命名
  2. 不推荐使用汉字定义变量
  3. 不能使用特殊字符或者以特殊字符开头定义变量,下划线和$除外
  4. 不能使用关键字定义变量
  5. 不能使用保留字定义变量
  6. 不推荐定义变量为name,可以改为username
  7. 变量中间不能出现空格

9/10/2016 2:33:56 PM

数据类型

  1. 简单类型
    • 数字类型Number
    • 字符串类型String
    • 布尔类型Boolean
    • undefiend变量未初始化(变量诶呦赋值)
  2. 复杂类型
    • Object:对象(引用)
    • Array:数组

      数据类型的作用

  3. 用来确定变量的值得存储方式

  4. 数字类型Number
    • 变量的值凡是所有的数字,那么该变量的数据类型就是数字类型
      • 小数、正数、负数
    • 数字类型的其他表示方式:
      • 十六进制表示:ox开头,0-9,a-f组成
      • 八进制表示:以0开头,0-7开始组成
    • 数字类型的取值范围
  5. 字符串类型
    • 变量的值,只要是用双引号或是双引号包含起来的。那么该数据的类型就属于字符串类型。(string)
    • 字符串的转义字符" 转义成普通的双引号字符(反斜杠)
      • " 双引号
      • ' 单引号
      • \ 一个反斜杠
      • \r 回车符
      • \n 换行符
  6. 布尔类型boolean
    • 布尔类型中的取值: true false
    • 一般通过判断条件的结果是否为true或false,来写逻辑代码。
  7. undefined类型
    • 如果在程序中,定义了变量,但是没给变量赋值,那么给变量的默认值是undefined。
    • 同时该变量的数据类型就是undefined类型。
  8. 算数运算符
    • 加 +
      • 特点:
        • 如果是两个数字类型的变量相加,结果是数字类型的结果
        • 如果是非数字类型的变量相加,结果为一个字符串类型的结果。
          • 此时的加号,起到的作用是连接的作用。
    • 减 -
      • 特点:
        • 如果是数字类型的变量相减,最后的结果是数字类型。
        • 如果是数字类型的字符串相减,最后的结果依然为数字类型的结果。[数据类型的转换(隐式类型的转换)
        • 如果是非数字类型的变量相减,结果为NaN(not a number 非数字) 123-“abc”
    • 乘 *
      • 特点
    • 除 /
      • 特点
        • 如果是数字类型的变量相除,结果为数字类型。
        • 如果除数是数字0,结果是无穷大的值,infinity无穷大
        • 如果是数字类型的字符串相除,结果为数字类型,由于进行了数据类型的数据转换导致的。(隐式类型转换)123/”abc”
        • 如果是数字类型的字符串相除…. 123/”123” =NaN
    • 取余 %
      • 特点
        • 获取余数。
    • 优先级()
      • 如果有小括号,程序先执行小括号里面的代码。
    • a+=b等
  9. 比较运算符 ###
  • 大于> 小于< >=大于或等于 <=小于或等于
  • 通过比较运算符得到的是一个布尔类型的结果。true false

数据类型的判断

  • typeof(变量) 获取当前变量的数据类型
    • 123-“abc” NaN 是 number类型
    • var a; undefiend 是 undefiend类型
    • 100/0 结果是infinity 是 number类型
  • IsNaN
    • 作用
      • 判断一个值是不是一个数字
    • 如果isNaN返回的结果是true,代表当前变量不是一个数字
    • 日过isNaN返回时一个false,代表当前变量是一个数字
      • 123 typeof(123) flase
      • “123” typeof(“123”) flase

注意

- alert(abc); 会出现... is  not  defiend,因为计算机中没有这个数据类型
- alert(abc); 把abc看成一个变量

9/10/2016 6:37:55 PM


Similar Posts

Comments