JavaScript
javascript使用
<script>标签
JavaScript 代码必须位于<script> 与 </script>
标签之间
能够在 HTML 文档中放置任意数量的脚本。
脚本可被放置与 HTML 页面的<body> 或 <head>
部分中,或兼而有之。
也可放置在扩展名为.js的外部文件中:
通过<script src="/path/file.js"></script>
的方式引入
javascript输出
javascript不提供任何内建的打印或显示函数。
要通过以下方式”显示”数据:
使用 window.alert() 写入警告框
使用 document.write() 写入 HTML 输出
使用 innerHTML 写入 HTML 元素
使用 console.log() 写入浏览器控制台
分号;
分号每句结束符。
JavaScript 会忽略多个空格。可以向脚本添加空格,以增强可读性。可以折行,代码行太长时
1
2document.getElementById("demo").innerHTML =
"Hello man.";
语法
值:
两种类型的值:混合值和变量值。
混合值被称为字面量(literal)。变量值被称为变量。
字符串是文本,由双引号或单引号包围var 声明变量
名称可包含字母、数字、下划线和美元符号
名称必须以字母开头
名称也可以 $ 和 _ 开头
名称对大小写敏感(y 和 Y 是不同的变量)
保留字(比如 JavaScript 的关键词)无法用作变量名称
声明多个变量用,号分隔
1 | 123 |
- 注释
以//开头 或 包含在”/* */“之间.
所有 JavaScript 标识符对大小写敏感。
变量 lastName 和 lastname,是两个不同的变量。
运算符
- 算数运算符
| 运算符|描述 |
|– |– |
|+ |加法 |
|- |减法 |
|* |乘法 |
|** |幂 |
|/ |除法 |
|% |系数 |
|++ |递加 |
|– |递减 |
- 赋值运算符
= += -= *= /= %=
在用于字符串时,+ 运算符被称为级联运算符。
相加两个数字,将返回和,但对一个数字和一个字符串相加将返回一个字符串:
- 比较运算符
|运算符 |描述 |
|– |– |
|== |等于 |
|=== |等值等型 |
|!= |不相等 |
|!== |不等值或不等型 |
|> |大于 |
|< |小于 |
|>= |大于或等于 |
|<= |小于或等于 |
|? |三元运算符 |
逻辑运算符
&& 与
|| 或
! 非类型运算符
typeof 返回变量类型
instanceof 返回 true,如果对象是对象类型的实例。位运算符
1 | & 与 |
数据类型
字符串值,数值,布尔值,数组,对象。
变量能够保存多种数据类型:数值、字符串值、数组、对象等等
1 | <script> |
- 布尔值
只有两个值:true或false - 数组
用方括号书写,数组项目用逗号分隔。 - 对象
用花括号{}包含,对象属性是 name:value 对,由逗号分隔。
1 | var names = ["张三","李四","王五"]; |
typeof 运算符对数组返回 “object”,因为在 JavaScript 中数组属于对象。
undefined
在 JavaScript 中,没有值的变量,其值是 undefined。typeof 也返回 undefined。Null
在 JavaScript 中,null 是 “nothing”。它被看做不存在的事物。
不幸的是,在 JavaScript 中,null 的数据类型是对象。
可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是 null。
可以通过设置值为 null 清空对象:
Undefined 与 null 的值相等,但类型不相等
原始数据
原始数据值是一种没有额外属性和方法的单一简单数据值。
typeof 运算符可返回以下原始类型之一:
- string
- number
- boolean
- undefined
复杂数据
typeof 运算符可返回以下两种类型之一:
- function
- object
typeof 运算符把对象、数组或 null 返回 object。
typeof 运算符不会把函数返回 object。
函数
函数通过 function 关键词进行定义,其后是函数名和括号 ()。
1 | function name(参数 1, 参数 2, ...) { |
当 JavaScript 到达 return 语句,函数将停止执行。
1 | var x = myFunction(7, 8); // 调用函数,返回值被赋值给 x |
() 运算符调用函数
不带(),引用函数对象,带括号引用函数结果。
1 | function fun(x,y){ |
函数体内声明的变量,为局部变量
对象
对象也是变量。但对象包含很多值。
在 JavaScript 中,几乎“所有事物”都是对象。除原始值。
布尔是对象(如果用 new 关键词定义)
数字是对象(如果用 new 关键词定义)
字符串是对象(如果用 new 关键词定义)
日期永远都是对象
算术永远都是对象
正则表达式永远都是对象
数组永远都是对象
函数永远都是对象
对象永远都是对象
创建方法:
- 使用对象字面量
var person = {name:”zs”,age:20,addr:xian};
- 使用new关键字
var person = new Object();
person.name = “lisi”;
person.age = 23;
person.addr = “xian”;
属性
访问对象属性有两种方式:- objectName.propertyName
- objectName.[“propertyName”]
- 可通过赋值添加属性
person.height = 1.7;
- delete关键字从对象中删除属性
delete person.age;
- 方法
方法是作为属性来存储的函数。
访问对象方法:
objectName.methodName()
objectName.methodName 返回函数体。 - this关键字
this 引用该函数的“拥有者”。
1 | var cat = { |