1.JavaScript
1.1 JS发展历史
-
1994年,网景公司(Netscape)发布了Navigator浏览器0.9版,这是世界上第一款比较成熟的网络浏览 器,轰动一时。但是这是一款名副其实的浏览器–只能浏览页面,浏览器无法与用户互动,当时解决这个问题 有两个办法,一个是采用现有的语言,许它们直接嵌入网页。另一个是发明一种全新的语言。 liveScript ==> javaScript ==> ECMAscript -
1995年Sun公司将Oak语言改名为Java,正式向市场推出。Sun公司大肆宣传,许诺这种语言可以"一次编 写,到处运 行"(Write Once, Run Anywhere),它看上去很可能成为未来的主宰。 -
网景公司动了心,决定与Sun公司结成联盟 -
34岁的系统程序员Brendan Eich登场了。1995年4月,网景公司录用了他,他只用10天时间就把 Javascript设计出来了。(多肽语言) -
(1)借鉴C语言的基本语法 (2)借鉴Java语言的数据类型和内存管理 (3)借鉴Scheme语言,将函数提升到"第一等公民"(first class)的地位 (4)借鉴Self语言,使用基于原型(prototype)的继承机制
1.2 JS的组成
- ECMAscript
ECMAscript:定义了javascript的语法规范,描述了语言的基本语法和数据类型
- DOM
DOM (Document Object Model): 文档对象模型
- BOM
BOM (Browser Object Model): 浏览器对象模型
总结: JS 就是通过固定的语法去操作 浏览器 和 标签结构 来实现网页上的各种效果
1.3 JS的编写位置
- 行内式
<a href="javascript:alert('aaa');">超链接</a>
<button onclick="alert('hello');">我是按钮</button>
- 内嵌式
<script type="text/javascript">
</script>
- 外链式
<script type="text/javascript" src="文件路径"></script>
1.4 JS的注释
// 我是一个单行注释
/* 我是一个多行注释 */
1.5 变量
1.5.1 定义变量及赋值
语法: var 变量名 = 值
var num;
num = 100;
var num2 = 200;
1.一个变量名只能存储一个值 2.当再次给一个变量赋值的时候,前面一次的值就没有了 3.变量名称区分大小写( JS 严格区分大小写)
1.5.2 变量名的命名规则和命名规范
- 一个变量名称可以由 数字、字母、英文下划线(_)、美元符号($) 组成
- 严格区分大小写
- 不能由数字开头
- 不能是 保留字 或者 关键字
- 不要出现空格
- 变量名尽量有意义(语义化)
- 遵循驼峰命名规则,由多个单词组成的时候,从第二个单词开始首字母大写
- 不要使用中文
2.数据类型
- 基本数据类型(5个:number、string、boolean、null、undefined)
- 复杂数据类型(对象类型(object)、函数类型(function)等)
2.1 基本数据类型
- 数值类型(number)
- 一切数字都是数值类型(包括二进制0b,八进制0或0o,十进制,十六进制0x,科学技术法10e2=10*10的二次方等)
- NaN (not a number):一个非数字
- 字符串类型(string)
被引号包裹的所有内容(可以是单引号也可以是双引号)
- 布尔类型(boolean)
true -----1 false-----0
- null 类型(null)
只有一个,就是 null ,表示空的意思
- 未定义类型(undefined)
2.2 判断数据类型
var n1 = 100;
console.log(typeof n1);
var s1 = 'abcdefg';
console.log(typeof(s1));
注意:
- typeof 返回值为字符串形式
- typeof(null) ----- 返回值为“object”
2.3 转换数据类型
2.3.1 其他数据类型转成数值
- Number(变量) -----【整体】
- 可以把一个变量强制转换成数值类型
- 可以转换小数,会保留小数
- 可以转换布尔值
- 遇到不可转换的都会返回 NaN
- parseInt(变量) -----【单个】
- 从第一位开始检查,是数字就转换,直到一个不是数字的内容
- 开头就不是数字,那么直接返回 NaN
- 不认识小数点,只能保留整数
- parseFloat(变量) -----【单个】
- 除了加法以外的数学运算
运算符两边都是可运算数字才行 如果运算符任何一遍不是一个可运算数字,那么就会返回 NaN 加法不可以用
2.3.2 其他数据类型转成字符串
- 变量.toString()
- 有一些数据类型不能使用 toString() 方法,比如 undefined 和 null
- String(变量)
所有数据类型都可以
- 使用加法运算
在 JS 里面, + 由两个含义 - 字符串拼接: 只要 + 任意一边是字符串,就会进行字符串拼接 - 加法运算:只有 + 两边都是数字的时候,才会进行数学运算
2.3.1 其他数据类型转成布尔
- Boolean(变量)
- false:‘’ 、0、null、undefined、NaN
- true:其余都是
|