(学习网站w3school.com,方便自己复习)
1.JavaScript 同时接受双引号和单引号;
2.JavaScript可以改变HTML 内容;
JavaScript 能够改变 HTML 属性;
JavaScript 能够改变 HTML 样式 (CSS);
JavaScript 能够隐藏 HTML 元素;
JavaScript 能够显示 HTML 元素
3.把js脚本置于body元素的底部,可改善显示速度,因为脚本编译会拖慢显示。
4.在外部文件中放置脚本有如下优势:
- 分离了 HTML 和代码
- 使 HTML 和 JavaScript 更易于阅读和维护
- 已缓存的 JavaScript 文件可加速页面加载
5.JavaScript 能够以不同方式“显示”数据:
- 使用 window.alert() 写入警告框
<script>
window.alert(显示内容);
</script>
- 使用 document.write() 写入 HTML 输出
<script>
document.write(显示内容);
</script>
(在 HTML 文档完全加载后使用 document.write() 将删除所有已有的 HTML)
- 使用 innerHTML 写入 HTML 元素
<script>
document.getElementById("demo").innerHTML = 定义内容;
</script>
- 使用 console.log() 写入浏览器控制台
console.log(定义内容);
-
JavaScript 语句定义两种类型的值:混合值
变量值(用 var 关键词来声明) -
JavaScript 关键词用于标识被执行的动作,如var;
-
JavaScript标识符用于命名变量以及关键词、函数和标签(首字符必须是字母、下划线(-)或美元符号($),连串的字符可以是字母、数字、下划线或美元符号)
-
所有 JavaScript 标识符对大小写敏感
-
命名方法:下划线(如last-name)
驼峰式(如lastName)
7.JavaScript 注释用于解释 JavaScript 代码,增强其可读性。
注释也可以用于在测试替代代码时阻止执行。
8.位运算符处理 32 位数。该运算中的任何数值运算数都会被转换为 32 位的数。结果会被转换回 JavaScript 数。
例如:5|1 => 0101|0001 => 0101
9.算数运算:+ - * / %(取余) ++ –
取幂运算符将第一个操作数提升到第二个操作数的幂
var x = 5;
var z = x ** 2; // 结果是 25
10.数据类型:字符串值,数值,布尔值,数组,对象
var length = 7; // 数字
var lastName = "Gates"; // 字符串
var cars = ["Porsche", "Volvo", "BMW"]; // 数组用方括号
var x = {firstName:"Bill", lastName:"Gates"}; // 对象用花括号
(可使用 JavaScript 的 typeof 来确定 JavaScript 变量的类型,typeof 运算符返回变量或表达式的类型)
-
没有值的变量,其值是 undefined。typeof 也返回 undefined
任何变量均可通过设置值为 undefined 进行清空; -
空值与 undefined 不是一回事,空的字符串变量既有值也有类型;
var car = ""; // 值是 "",类型是 "string"
- 在 JavaScript 中,null 的数据类型是对象,可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是null,可以通过设置值为 null 清空对象
var person = null; // 值是 null,但是类型仍然是对象
11.JavaScript 函数
定义:
function name(参数 1, 参数 2, 参数 3) {
要执行的代码
}
12.JavaScript 对象
属性:
值以 名称:值对 的方式来书写(名称和值由冒号分隔)
方法:在对象上执行的动作,以函数定义被存储在属性中
var person = {
firstName: "Bill",
lastName : "Gates",
id : 678, //属性
fullName : function() { //方法
return this.firstName + " " + this.lastName;
}
};
访问方法:对象名.属性/方法名;
13.HTML事件
14.字符串方法
- length 属性返回字符串的长度;
- indexOf() 方法返回字符串中指定文本首次出现的索引(位置);
lastIndexOf() 方法返回指定文本在字符串中最后一次出现的索引;
(如果未找到文本, indexOf() 和 lastIndexOf() 均返回 -1) - search() 方法搜索特定值的字符串,并返回匹配的位置
- 提取部分字符串:
slice() 提取字符串的某个部分并在新字符串中返回被提取的部分
(如果某个参数为负,则从字符串的结尾开始计数)
substring() 类似于 slice(),不同在于 substring() 无法接受负的索引;
substr() 类似于 slice(),不同在于第二个参数规定被提取部分的长度。
var str = "Apple, Banana, Mango";
var res = str.slice(7,13); //参数为起7和尾13,则res=Banana
var str = "Apple, Banana, Mango";
var res = str.substr(7,6); //参数为起7和截取6个
-
replace() 方法用另一个值替换在字符串中指定的值
(不会改变调用它的字符串,它返回的是新字符串,默认地replace() 只替换首个匹配) -
通过 toUpperCase() 把字符串转换为大写
通过 toLowerCase() 把字符串转换为小写 -
concat() 连接两个或多个字符串,用于代替加运算符
-
trim() 方法删除字符串两端的空白符;
-
charAt() 方法返回字符串中指定下标(位置)的字符串
-
允许对字符串的属性访问 [ ]
-
split() 将字符串转换为数组
```javascript
var txt = "a,b,c,d,e"; // 字符串
txt.split(","); // 用逗号分隔
txt.split(" "); // 用空格分隔
txt.split("|"); // 用竖线分隔
15.JavaScript 数字
-
JavaScript 只有一种数值类型书写数值时带不带小数点均可;
-
JavaScript 数值始终以双精度浮点数来存储,不会定义不同类型的数比如整数等;
-
NaN 属于 JavaScript 保留词,指示某个数不是合法数,函数isNaN() 来确定某个值是否是数;
-
Infinity (或 -Infinity)是 JavaScript 在计算数时超出最大可能数范围时返回的值
(rapeof Infinity或者NaN返回皆是number) -
前缀为 0x 的数值常量解释为十六进制,前导零的数解释为八进制;
(能够使用 toString() 方法把数输出为十六进制、八进制或二进制)
var myNumber = 128;
myNumber.toString(16); // 返回 80
myNumber.toString(8); // 返回 200
myNumber.toString(2); // 返回 10000000
- 数值可以是对象
通常 JavaScript 数值是通过字面量创建的原始值:var x = 123,x为number
但是也可以通过关键词 new 定义为对象:var y = new Number(123),y为object
(请不要创建数值对象这样会拖慢执行速度,new 关键词使代码复杂化并产生某些无法预料的结果)
16.JavaScript 数值方法 - toString() 以字符串返回数值
- toExponential() 返回字符串值,它包含已被四舍五入并使用指数计数法的数字
- toFixed() 返回字符串值,它包含了指定位数小数的数字
- toPrecision() 返回字符串值,它包含了指定长度的数字:
- valueOf() 以数值返回数值;
- 变量转换为数值: Number() 方法,返回数字,由其参数转换而来
parseInt() 方法,解析其参数并返回浮点数
parseFloat() 方法,解析其参数并返回整数