
JavaScript操作BOM与DOM基础
下载需积分: 10 | 6KB |
更新于2024-08-31
| 166 浏览量 | 举报
收藏
"Ch02-js操作BOM.txt"
JavaScript(简称JS)是一种轻量级的、解释型的编程语言,主要应用于Web开发,用于增加网页的交互性和动态功能。JS基于对象和事件驱动,这意味着它能够直接操作对象并响应用户的交互。此外,JS具有弱类型特性,意味着变量的数据类型可以在运行时自动转换。
JS的组成部分包括:
1. ECMAScript:这是JS的基础,定义了语言的语法和基本对象。ECMAScript标准由欧洲计算机制造商协会(ECMA)制定,最新版本为ECMAScript 2022。
2. BOM(浏览器对象模型):BOM允许JS与浏览器进行交互,如窗口、导航、历史记录等。每个浏览器都有自己的BOM实现,但通常会遵循一定的兼容性标准。
3. DOM(文档对象模型):DOM是HTML和XML文档的结构化表示,它定义了一种标准方法来访问和修改文档内容和结构。通过DOM,JS可以查找、遍历、修改网页元素。
JS定义变量通常使用`var`关键字,如`var 变量名 = 值;`。数组的定义有四种方式:
1. `var arr = new Array();`
2. `var arr = new Array(size);`
3. `var arr = new Array(值1, 值2...);`
4. `var arr = [值1, 值2...];`
遍历数组有两种方法:
1. 使用`for`循环:`for (var i = 0; i < arr.length; i++) { arr[i]; }`
2. 使用`for...in`循环:`for (var num in arr) { arr[num]; }`(注意`for...in`循环遍历的是数组索引,而不是元素本身)
在JS中,`==`用于比较值,而`===`不仅比较值,还比较数据类型。因此,`===`通常被认为更严格。
JS代码可以放置在以下位置:
1. 行内:在HTML元素的`on*`事件属性中,如`<a href="javascript:js代码"></a>`
2. 内部:在`<script>`标签内,如`<script>js代码</script>`
3. 外部:创建`.js`文件并在HTML中引用,如`<script src="js文件的路径"></script>`
下面是一个简单的函数示例,该函数接收用户输入的两个数字和一个运算符,然后根据运算符执行加法或减法:
```javascript
function calculate() {
var numStr1 = prompt("请输入第一个数字", "0");
if (isNaN(numStr1) === true) {
alert("当前输入的不是数字");
return;
}
var num1 = parseInt(numStr1);
var numStr2 = prompt("请输入第二个数字", "0");
var num2 = parseInt(numStr2);
var opera = prompt("请输入运算符", "0");
var result = 0;
if (opera == "+") {
result = num1 + num2;
} else if (opera == "-") {
result = num1 - num2;
}
// 输出结果
alert("计算结果是:" + result);
}
```
这个函数通过`prompt`获取用户输入,然后用`parseInt`将字符串转换为整数。根据用户输入的运算符,函数计算两个数字的和或差,并通过`alert`显示结果。
相关推荐



















王大师王文峰
- 粉丝: 1w+
最新资源
- vagrant-hosts插件:自动化本地主机名设置的解决方案
- Laravel演示应用教程:Docker容器化与运行指南
- HackTX项目:提升选民意识的网络应用
- React与D3.js的结合使用与项目脚本管理
- Laravel 5.1中重构ERP系统的实现与SocketIO应用
- WatchKit连通性实践:从入门到示例解析
- Node+Express+SockJS打造简易聊天应用
- Matlab实现欧拉公式求圆周率-编程俱乐部每周问题集
- 使用MATLAB实现HySyn系统中的神经调节计算与追踪
- TrackLogger: Android平台简易GPS轨迹记录工具
- 实现高效轮播效果:CarouselEffect结合ViewPager使用指南
- leios.github.io:技术与创造力的结合体
- MATLAB代码分析细胞内EB彗星相对空间定位
- Matlab图形绘制指南:从基础到应用
- HTML入门GitHub学习实验室课程资料库
- C# WebAPI后端示例:使用Forge查看存储桶与对象模型
- Elm构建的WebGL游戏:时间与路线管理的挑战
- MATLAB实现手写数字识别的SVM算法项目解析
- WPA-2破解演示:使用Python计算消息完整性检查
- 《TTT-Coffee-Cup-Hunt》:加里Mod中的积分新玩法
- Wheel库增强Node.js日志工具Log.io的性能与可视化
- 最大化AppCode IDE性能:iOS开发者Java VM选项指南
- MATLAB数值解法课程报告:循环运行与开源环境配置
- MediaTek天玑800U发布:推动5G技术普及