博客
关于我
初识HTML(六)高级:了解JavaScript
阅读量:634 次
发布时间:2019-03-14

本文共 2818 字,大约阅读时间需要 9 分钟。

JavaScript入门与实践

JavaScript 简介

JavaScript(简称JS)是一种动态的编程语言,常被称为"网页开发的第三件宝物",与HTML和CSS共同构成了现代web开发的"三剑客"之一。其主要用途是在网页中添加动态功能,为用户提供更流畅的页面体验和丰富的用户交互。

JavaScript 的特点

  • 解释型语言:没有需要先编译的步骤,直接由浏览器内置解释器执行。
  • 轻量级:代码简洁,灵活性高,可以直接嵌入HTML文件。
  • 无需声明,随时可用:不需要显式地定义变量类型,可以根据需求自行决定。
  • 基于对象:内置了丰富的对象,如String、Number、Array、Date等,便于快速开发。
  • JS 的组成部分

    JS的实现分为三部分:

  • ECMAScript:定义了JS的语法、基本对象和操作符等核心内容。
  • DOM(文档对象模型):允许对网页内容进行操作和查询,主要用于修改和动态生成网页元素。
  • BOM(浏览器对象模型):与浏览器交互,提供操作浏览器内置功能的接口。
  • ES6 与 JS

    ES6(ECMAScript 6)是JS的最新版本,引入了许多有益的新特性:

    • let:用于块级变量声明,强ganndo块作用域的概念。
    • const:用于常量声明,一旦赋值后不能修改。
    • 复合语句的改进等。

    JS 的基本语法规范

    • 换行不敏感:无论换行、缩进还是空格,JS都不会对语法产生影响。
    • 语句终止符:每句代码必须以分号;结束,避免语句堆叠导致错误。
    • 注释
      • 单行注释://
      • 多行注释:/* multiline comment */
      • 注释不会被解释器执行,只用于代码说明。

    变量定义

    JS是弱类型语言,不需要提前声明变量类型:

    var x; // 未初始化,类型为undefinedx = 10; // typeof x -> 'number'

    变量命名规范

  • 由字母、数字、下划线、$组成,不能以数字开头。
  • 不区分大小写(js区分大小写)。
  • 不使用关键字和保留字。
  • 数据类型

    JS的数据类型主要包括以下几种:

  • number):包括浮点数、整数等。InfinityNaN为特殊值。
  • 字符串string):可以用单引号或双引号表示。
  • 数组Array):存储多个项,支持通过索引访问。
  • 对象Object):由键值对组成,可以存储结构化数据。
  • 布尔boolean):只有truefalse两种值。
  • 未定义undefined)和null:描述未赋值或空值。
  • 条件控制

    if-else

    if (condition) {    console.log('符合条件');} else if (condition) {    console.log('符合第二个条件');} else {    console.log('否则情况');}

    条件判断从上到下依次执行,符合第一个条件的将执行,否则检查下一个,依此类推。

    switch

    适合多条件判断:

    switch(day) {    case 1:        console.log('周一'); break;    case 3:        console.log('周三'); break;    case 6:        console.log('周六'); break;    default:        console.log('周末');}

    循序控制

    for 循环

    for (let i = 0; i <= 10; i++) {    console.log(i);}

    let用于声明循环变量,i会在循环结束后被回收,释放内存。

    while 循环

    while (i <= 10) {    console.log(i);    i++;}

    while根据条件决定是否继续执行。要注意避免无限循环,确保条件有可能不成立。

    三元运算符

    var x = 10;var y = 15;var result = x > y ? x : y; // result -> 10

    三元运算符可在单行完成简单的选择逻辑。

    函数与变量

    函数定义

    function greet(name) {    return `嗨,${name}!`;}greet('Alice'); // '嗨,Alice !

    匿名函数

    var sum = function(a, b) {    return a + b;};sum(1, 2); // 3

    全局与局部变量

    var globalVar = 'global';function scopeFunc() {    var localVar = 'local';}console.log(globalVar); // global

    DOM 操作

    基本操作

    选择元素

    document.getElementById('id');document.getElementsByClassName('class');document.getElementsByTagName('标签名');document.getElementsByName('名称属性');

    每个方法都返回一个数组,具体取值需根据需求决定。

    添加样式

    元素.style.backgroundColor = 'red';// 或使用 classList 操作元素.classList.add('newClass');元素.classList.remove('oldClass');

    动态创建元素

    var div = document.createElement('div');document.body.appendChild(div);

    绑定事件

    元素.addEventListener('事件名称', 函数);

    通过合理运用DOM操作,可以对网页元素进行实时修改和动态生成,极大提升网页的交互性和可用性。

    事件处理

    在HTML中,通过特定属性绑定事件处理函数:

    点击这里

    或者在JS中动态绑定:

    元素.ontlick = function() {    // 处理事件};

    通过事件处理,可以为用户提供丰富的交互体验,例如节流放大镜、动画切换等功能。

    定时器

    JS 提供了两种定时器:

    • setTimeout:执行一次事件。
    • setInterval:周期性执行事件。
    setTimeout(function() {    // 同时执行此函数}, 3000);setInterval(function() {    // 每隔3000毫秒执行一次}, 3000);

    总结

    JS 是灵活且强大的语言,适用于前端开发、网页动态化、服务器端脚本等多种场景。其内置的DOM操作能力使其在网页开发中占据重要地位。通过上述内容,可以初步掌握JS的基础知识,为后续学习奠定基础。

    转载地址:http://ztnoz.baihongyu.com/

    你可能感兴趣的文章
    Nginx日志分析系统---ElasticStack(ELK)工作笔记001
    查看>>
    Nginx映射本地json文件,配置解决浏览器跨域问题,提供前端get请求模拟数据
    查看>>
    nginx最最最详细教程来了
    查看>>
    Nginx服务器---正向代理
    查看>>
    Nginx服务器上安装SSL证书
    查看>>
    Nginx服务器的安装
    查看>>
    Nginx模块 ngx_http_limit_conn_module 限制连接数
    查看>>
    nginx添加模块与https支持
    查看>>
    Nginx用户认证
    查看>>
    Nginx的location匹配规则的关键问题详解
    查看>>
    Nginx的Rewrite正则表达式,匹配非某单词
    查看>>
    Nginx的使用总结(一)
    查看>>
    Nginx的使用总结(三)
    查看>>
    Nginx的使用总结(二)
    查看>>
    Nginx的可视化神器nginx-gui的下载配置和使用
    查看>>
    Nginx的是什么?干什么用的?
    查看>>
    Nginx访问控制_登陆权限的控制(http_auth_basic_module)
    查看>>
    nginx负载均衡和反相代理的配置
    查看>>
    nginx负载均衡器处理session共享的几种方法(转)
    查看>>
    nginx负载均衡的5种策略(转载)
    查看>>