ECMAScript
1. ECMA: 欧洲计算机制造商协会
2. ECMA-262:制定浏览器脚本语言标准的
3.ECAMScript:ECMA-262指定的具体标准
4. ActionScript(flash) 和 JavaScript是标准的实现
JavaScript:基于对象和事件驱动,并有安全性的在浏览器端运行的一门脚本语言
JS的组成部分:ECMASCRIPT核心 BOM DOM
javaScript编写及运行
内联样式
内部样式<script></script>
外部样式<script src="##.js"></script>
变量
var a = 10;//声明一个变量a,赋值为10 es6 (保留关键词:let const)
变量名:有数字 字母 下划线 和美元符号($)组成 不能以数字开头 严格区分大小写 不能是关键字和保留字
如果错误可以打开控制台查看
关键字:在当前版本里已经使用,并且有特殊含义的单词 if else for when
保留字:在当前版本里没有使用,但是有特殊含义,可能在后续版本中使用的单词
数据类型
es5里规定了6种数据类型
数值类型(number) 字符串类型(string) 布尔类型(boolean) undefined null 对象类型(object) 前5种称为基本类型 object称为复合类型
数值类型(可以为整数或小数)
例:var num1 = 1; var num2 = 12.3; num2 = 2;//重新赋值
字符串类型(“ ”)
例:var str = "ad12发";
布尔类型 (true(1) false(0))
undefined类型只有一个值 undefined
alert(a);//报错 我们使用了变量a,但是在整个环境中,并没有去定义这个a,没找到,提示 a is not defined
声明了一个变量但是没有赋值或者就是根本没有声明变量,默认取值undefined
null类型只有一个值 null
运算符
算术运算符 + - * / %
赋值运算 = += -= *= /= %=
var a = 20;
a = a + 100; //赋值符号左右两边的变量相同时,可以简写
a += 100;
console.log(a);
//关系运算(比较)== > >= <= < != === !== 运算结果是否是布尔值
console.log(10 <= 20); //true
类型转换
显式转换 转型函数
Number(val) String(val) Boolean(val) parseInt(val) parseFloat(val)
console.log(Number("123")); //123
console.log(String(123)); //"123"
console.log(Boolean(123)); //true
console.log(parseInt("123.1abc")); //123
console.log(parseFloat("123.1abc")); //123.1
隐式转换
console.log("123" - 1);
console.log(true + 1);