#一 JavaScript概述
1.HTml是结构层、css是样式层、JavaScript是行为层。
2 ecma
ECMA是“European Computer Manufactures Association”的缩写,中文称欧洲计算机制造联合会。是1961年成立的旨在建立统一的电脑操作格式标准–包括程序语言和输入输出的组织。
3 ecmascript(ES)
ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,所以它可以理解为是javascript的一个标准,但实际上后两者是ECMA-262标准的实现和扩展。
4 javascript
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。 [1]
为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。
完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,浏览器对象模型。
#二 JavaScript的基本结构
1 可以包含在文档任何部分
<script> JavaScrip语句 </script>
变量命名语法规定
* 必须是字母、数字、下划线和$组成
* 首字母不能是数字
* 不能使用Javascript保留字
* 命名区分大小写
#三 基本语法
1 变量类型
1. undefined
2. null
3. boolean
4. number
5. string
6. object
2 typeof的结果
1. typeof 3:number
2. typeof undefined:undefined
3. typeof true:boolean
4. typeof ' ':string
5. typeof null:object
6. typeof {}:object
7. typeof 函数:function
3 运算符号
1.算数运算符:+ - * % / ++ --
2.比较运算符:> < >= <= == != ===(恒等)
3.赋值运算符:=
4.逻辑运算符:&& || !
4.类型转换
1.数字转换为字符串(number to string)三种
var a=12;
var b=13;
...tostring
var c=a.toString()+b;
...加空
var c=a+''+b;
console.log(c);
...直接String
console.log(String(a)+11);
2.字符串转化为数字(string to number)五种
var f='12.9abc';
console.log(parseInt(f)); //去除小数点
console.log(parseFloat(f));
...Number(必须全数字,夹杂字母失效)
c=Number(f); //NaN
// 字符串转化为数字
f1=+f
// 字符串转化为整数
f2=~~f
3.数字,字符串转化为布尔类型(number,string to Bool)
console.log(Boolean())
数字0是false,其余为true
字母空是false,否则为true
console.log(!!a)
4.布尔转化为数字(Bool to number)
false为0,true为1,可与数字相加
console.log(false+1)=1
console.log(true+1)=2
5.undefined、null转为bool都是false
!! undefined //false
!! null //false
console.log(!!undefined==0); //true
console.log(undefined==0); //false
console.log(undefined==false); //false
console.log(undefined==null); //true
console.log(NaN==NaN); //false
console.log(undefined===null); //false