JavaScript入门
1. JavaScript是一种为网页交互而设计的交互语言,由以下三部分组成:
- ECMAScript:核心语言功能
- 文档对象模型(DOM):访问操作网页内容
- 浏览器对象模型(BOM):与浏览器交互
2. < script >标签的六个参数
- src:外部文件路径
- type:一般默认为text/javascript
- async:脚本是否立即下载(异步不保证先后顺序)
- defer:脚本是否延迟到文档完全被解析后再执行(按照先后顺序)
- charset:编码
- language:已废弃
JavaScript基本语法
语法
- 一切变量、函数和操作符区分大小写
- 标识符不可以以数字开头
- 起名格式最佳实践驼峰大小写
- 单行注释// 多行注释/**/
- 严格模式“use strict”:
- 区别:严格模式是浏览器根据规范去显示页面;混杂模式是以一种向后兼容的方式去显示;
- 意义:决定浏览器如何渲染网站;
- 触发:浏览器根据doctype是否存在(严格)和使用的是那种dtd来决定。
变量
- 初始化变量var xxx,初始保存值为undefined;
- 定义在函数中的是局部变量,省略var则为全局变量;
- 可以但不推荐在修改变量值的同时修改变量数据类型;
- 一条语句同时声明多个变量的方式:
var message = "hi", found = false, age = 29
数据类型
1. Undefined
只有一个值,只声明未赋值的变量初始值都是undefined。
2. Null
只有一个值,是一个空对象指针,变量定义时如果将要用于保存对象,可将其初始化为null。
3.Boolean
有两个值true和false,转型函数Boolean()。
数据类型 | 转换为true | 转换为false |
---|---|---|
Boolean | true | false |
String | 所有非空字符串 | “” |
Number | 所有非零数值 | 0和NaN |
Object | 所有对象 | null |
Undefined | N/A | undefined |
4. Number
- 八进制的第一位必须是0,十六进制的第一位必须是0x。
- NaN即非数值(Not a Number),用于表示一个本来要返回数值的操作数未返回数值的情况,与任何值都不相等。isNaN()用于判断参数是否“不是数值”。
- 数值转换:Number()、parseInt()、parseFloat()
var num1 = Number("javascript"); //NaN
var num2 = Number(""); //0
var num3 = Number("0911"); //911
var num4 = Number(true); //1
var num1 = parseInt("123javascript"); //123
var num2 = parseInt(""); //NaN
var num3 = parseInt(22.5); //22
var num4 = parseInt(70); //70
var num5 = parseInt(070); //56 八进制
var num6 = parseInt(0xf); //15 十六进制
var num1 = parseFloat("123javascript"); //123
var num2 = parseFloat("0xA"); //0 始终忽略前导零
var num3 = parseFloat(22.5); //22.5
var num4 = parseFloat(22.34.5); //22.34
var num5 = parseFloat(070.5); //70.5
var num6 = parseFloat(3.125e7); //31250000
5. String
- 可以由单引号或双引号表示,完全相同。
- x.toSting(y),x代表将要转换为String类型的变量,y表示x是什么进制的数。
6. Object
- 创建自定义对象:
var o = new Object()
- Object类型是其他所有实例的基础,它所有的属性和方法都被具体对象所继承:
- constructor:构造函数
- hasOwnProperty(propertyName):检查给定属性在当前对象实例中是否存在
- propertyIsEnumerable(propertyName):检查给定属性能否使用for-in语句来枚举
- isPrototypeOf(object):原型链
- toLocaleString():返回对象与执行环境地区对应的字符串表示
- toString():返回对象的字符串表示
- valueOf():返回对象的字符串、数值或布尔值表示,通常与前者相同