JavaScript初步理解

JavaScript

javascript 有三部分构成,ECMAScript,DOM和BOM

JavaScriot诞生与发展

起初的诞生是为了 验证表单:减轻服务器的压力

ECMA组织——>JavaScript——>ECMAScript——>ES

ES5与ES6

https://www.jianshu.com/p/477a0bbc0c1d

一整套JavaScript

1.ECMAScript:
  • 注释 // /* */
  • 变量
  • 操作符
  • 逻辑控制
  • 对象
  • 数组
  • 函数
  • 正则表达式
  • 内置。。。。
2.DOM:document Object Model
  • js操作html代码
  • Var input = document.getElementsByTagName(“input”)
  • Var in=document.getElementById(“inid”)
3.BOM:browser Object Model
  • js操作浏览器
  • 弹框:告警框、对话框、提示框
  • 定时器:setInterval、SetTimeOut、httpRequest、ajax

js的解析

浏览器:
火狐、谷歌、IE(ECMAScript通用,DOM和BOM兼容性)

js解释器:
Nodejs(ECMAScript、网络编程、数据库编程、文件编程(IO)、React、ES6)

调试方法:看报错信息、通篇看一遍,断点、二分查找

js开发使用

浏览器开发使用

*.html <script></script>
*.html *.js <script src></script>

本地双击html文件打开的 file://

/var/www/html/xiangmu http://

nodejs开发使用

$ node -v
$ node hello.js
$ node ~/ES5-day01/hello.js
$ node hello
$ node /var/www/html/you/js/world
$ node

> ECMAScript
> node解释器的快捷操作命令 .help .save  .exit
> var a=10;
> console.log(a)
> a  //node环境里的快捷使用的命令

js的特点:

  • 客户端、服务器运行:取决于运行平台,js可以跨平台使用

  • 解释性语言

    js——>解释器(浏览器、nodejs)

  • 弱类型语言
    关键字 var(ES5)
    var=10

  • 从上而下顺序解析执行

node环境下有关js的一些小注意点

  • 在node中alert(a)是会报错的,因为alert()是BOM操作

  • node环境里,不是ES语法,示例中的b是node提供的快捷操作,最好还是按照标准语法里写

var 100;

console.log(b);

b

  • .save后面必须跟file名

变量var(variable )

变量是一个值的容器,该容器的值可以随时改变,数据类型取决于容器里的值。

ECMAScript的变量是弱类型(松散类型),可以用来保存任何类型的数据。

定义变量时使用var关键字。

变量名的命名规则

  • 变量名由字母,数字,下划线以及$组成。
  • 不要使用下划线或者数字作为变量名的开头
  • 变量名应该具有一定的意义,使用小驼峰命名规则 var userAgeTotal = “”;
  • 不要使用关键字或是保留字

变量的使用

  • 声明 var message;
  • 初始化 message = “hello”
  • 声明并初始化 var message = “hello”;
  • 定义多个变量 var message= “hello”,found=false, age = 29;

声明

  • var 变量名;
  • var sum;
  • var total;
  • var sumSalary;

赋值

  • sum=10;
  • tatal=10.2
  • var name=‘笔记本’ (声明与赋值同时使用是可以的)

使用

  • var price=sum*total
  • console.log(name)

var与其他语言的不同点

  • 可以重复赋值(相同的数据类型、不同的数据类型)11:10

  • 变量提升:解析器会先解析var

      console.log(a);
      var a=2;
      相当于
      var a;
      console.log(a);
      a=2;
    
    
      console.log(b);//报错ReferenceError
      let b=2;
    

只声明不赋值去使用,就会报undefined关键字

强类型

变量:不能重复地去声明、不能赋值给不同的数据类型、不能在声明的时候就会有数据类型

  • 整型:byte short int long
  • 浮点型:float double
  • 字符串:string
  • 布尔型:boolean :true false
  • 数组类型:array

上面的基本数据类型放在栈,下面的引用类型放在堆里

类类型:object
空:null

弱类型

JavaScript为弱类型,常见数据类型如下

  • 数字类型:Number

  • 字符串:String

  • 布尔类型:Boolean

  • 类类型:Object Array Function Regprex (引用类型)

  • null

  • undefined派生自(extends)null,是null的子类,都归类为引用类型,如果将undefined与null做比较,结果肯定为true

      比较null与undefined
      == 相等
      === 不完全相等
    

Number类型 注意点

直接用dom解析去获得数据库表单数据之后,没有进行数据类型的判断与转义,转换成合适的数据类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值