JavaScript的诞生
javascript历史回顾
JavaScript 因为互联网而生,紧随着浏览器的出现而问世。回顾它的历史,就要从浏览器的历史讲起。
-
1990年,欧洲的Tim Berners-Lee(伯纳斯·李)在互联网基础上发明了万维网,可以在网页上浏览器网页文件。最早的网页只能在操作系统的终端里浏览,也就是只能用命名行的方式,网页在字符窗口里显示,非常的不方便。
-
1992年,NCSA开始开发一个独立的浏览器,叫做Mosaic。Mosaic:互联网历史上第一个获普遍使用和能够显示图片的网页浏览器
-
1994年12月,navigator发布了1.0版,市场份额一举超过90%。 Netscape 公司很快发现,Navigator浏览器需要一种可以嵌入网页的脚本语言,用来控制浏览器行为。当时,网速很慢而且上网费很贵,有些操作不宜在服务器端完成。比如,如果用户忘记填写“用户名”,就点了“发送”按钮,到服务器再发现这一点就有点太晚了,最好能在用户发出数据之前,就告诉用户“请填写用户名”。这就需要在网页中嵌入小程序,让浏览器检查每一栏是否都填写了。
-
1995年5月,Brendan Eich只用了10天,就设计完成了这种语言的第一版。最初名字叫做 Mocha,1995年9月改为LiveScript。12月改名叫做JavaScript当时的意图是将 JavaScript 作为 Java 的补充,用来操作网页。
-
1996年3月,Navigator 2.0 浏览器正式内置了 JavaScript 脚本语言。
-
1996年8月,微软模仿JavaScript开发了一种相近的语言,取名为JScript(JavaScript是Netscape的注册商标,微软不能用),首先内置于IE 3.0。Netscape公司面临丧失浏览器脚本语言的主导权的局面。
-
1996年11月,Netscape公司决定将JavaScript提交给国际标准化组织ECMA。目前共25个人。该委员会定期开会,所有的邮件讨论和会议记录,都是公开的。
JavaScript的书写位置
- 写在行内
<input type="button" value="按钮" onclick="alert('Hello World')" />
- 写在script标签中
<head>
<script>
alert('Hello World!');
</script>
</head>
- 写在外部js文件中,在页面引入
<script src="main.js"></script>
四种输出方式
a) alert() 在页面中弹出提示框
b) dconsole.log() 在控制台中打印出信息
c) document.write() 在页面中打印出
d) prompt(“这里写我们要提示的内容:”) 接收用户输入的信息
alert("冯**");
document.write("冯**");
console.log("冯**");
prompt("请输入姓名...")
JavaScript的组成
ECMAScript标准 - JavaScript的核心
BOM - 浏览器对象模型
DOM - 文档对象模型
JavaScript特点
- JavaScript:简称:JS
- 是一门编程语言 d
- 是一门客户端脚本语言,是一门弱类型的语言,声明都用var
- 是一门解释性的语言,是一门动态类型的语言,当浏览器解析这行代码的时候,才知道这个变量具体是什么类型,
- 是一门基于对象的语言,直接使用系统当中的对象.
- js最初的目的:解决用户和浏览器之间的交互问题
- 现在的目的:特效,游戏,应用程序,服务器端的程序
JavaScript版本
- 1997年EcmAS Cript 1.0
- 1998年EcmAS Cript 2.0
- 1999年EcmAS Cript 3.0
- 2008年EcmAS Cript 5
- 2015年EcmAS Cript 6
JavaScript最初的目的
最初的目的是为了处理表单的验证操作
标识符
概念:给变量,函数等取名字的字符序列
命名规则:
- 由数字,字母,下划线___,美元符号$,组成
- 不能以数字开头。
- 不能是关键字(关键字是JS语言赋予特定含义的单词 如 :var)
- 区分大小写。
四种输出方式
- alert(); 弹出框
- console.log(); 控制台输出 d
- ocument.write(); 页面输出
- prompt(); 输入框
弹出框
<script>
alert(弹出框内容);
</script>
控制台输出
<script>
console.log(控制台内容);
</script>
页面输出
<script>
document.write(页面内容);
</script>
输入框
<script>
var xm= prompt('输入框内容');
console.log(xm);
</script>
变量及变量声明
什么是变量:在程序运行过程中,值会发生改变的量。
如何声明变量:
用var声明:
var a; //声明是一个变量a
a = 10; //将10赋值给a
简化为:
var a = 10; //声明这是一个变量名为a。将10赋值给a
var a = 10; //声明一个变量a,并赋值
var b = 20; //声明一个变量b,并赋值
var c = 30; //声明一个变量c,并赋值
var a,b,c //同时声明变量 a,b,c
a = 10;
b = 20;
c = 30;
var a= 10, b = 20, c = 30; //不建议
命名规范
见名识意:sum(和) apple price(苹果价格)nama(名字)height(高度)
color(颜色) width(宽度)
驼峰命名法:多个单词组成,第二个单词首字母大写
(apple Price)
常用命名:
sum(和)max(最大值)min(最小)num(数字) str(字符串)
arr(数组名)
数据类型:
numaber 数值类型
string 字符串类型
Boolean 布尔类型
null 空类型
undefined 未定义类型
object 对象类型
标题在页面中输入一个2*2的表格
<title>Document</title>
</head>
<body>
<table border="1px">
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</table>
</body>
<script>
// 在页面中输出2*2的一个表格?
document.write("<table border='1px'>\
<tr>\
<td>1</td>\
<td>w</td>\
</tr>\
<tr>\
<td>1</td>\
<td>2</td>\
</tr>\
</table>");
document.write("死生契阔<br>与子成说<br>执子之手<br>与子偕老");
console.log("死生契阔\n与子成说\n执子之手\n与子偕老");
alert("死生契阔\n与子成说\n执子之手\n与子偕老");
</script>
</html>
简单数据类型
Number、String、Boolean、Undefined、Null
Number类型
数值字面量:数值的固定值的表示法
String类型
字符串字面量
Boolean类型
Boolean字面量: true和false,区分大小写
计算机内部存储:true为1,false为0
Undefined和Null
1. undefined表示一个声明了没有赋值的变量,变量只声明的时候值默认是undefined
2. null表示一个空,变量的值如果想为null,必须手动设置
typeof 用于检测是哪种数值类型
复杂数据类型
Object 对象类型
单行注释
用来描述下面一个或多行代码的作用
// 这是一个变量
var name = 'hm';
多行注释
用来注释多条代码
/*
var age = 18;
var name = 'zs';
console.log(name, age);
*/
转义符
字符串拼接
字符串拼接使用 + 连接
console.log(11 + 11); //22
console.log('hello' + ' world'); //hello world
console.log('100' + '100'); //100100
console.log('11' + 11); //1111
console.log('male:' + true); //maletrue
如何定义变量 在控制台打印
<title>Document</title>
</head>
<body>
</body>
<script>
// 声明一个变量并赋值为10
var a = 20.4; //浮点数
var b = NaN; //NaN
var c = 23; //整数
// 控制台打印输出
// typeof 用于检测数据类型
console.log(typeof a); //number
console.log(typeof b); //number
console.log(typeof c); //number
var d = "张三";
var e = "1002";
console.log(typeof d)
console.log(typeof e)
var f = true; //真
var g = false; //假
console.log(typeof f)
console.log(typeof g)
var w; //声明了一个变量
console.log(typeof w) //undefined
var n = null; //声明一个null类型,需要手动赋值为null
console.log(typeof n) //Object
</script>
</html>
<title>Document</title>
</head>
<body>
</body>
<script>
var a = 10;
var b = 20.1;
var c = NaN;
var e = '10'
var f = '呵呵'
var g = 'abc'
var h = true;
var k = false;
var u;
var n = null;
console.log(typeof n);//Object
我是一个"'好学生'"
var str = "我是一个\"\'好学生\'\"";
var str1 = '我是\t张三'
console.log(str)
console.log(str1)
var str1= "hello world"
console.log(11 + 11); //22
console.log('11' + '11');//1111
console.log('hello' + ' world');
console.log('11' + 11);//1111 22
console.log(11+'11');//1111 22
console.log(11+11+'11');//22+'11' 2211
console.log(11+"11"+11+11+'11');//111111111
</script>
</html>