1.JavaScript词法结构

所谓词法结构是指一套基础性规则,用来描述如何使用这门语言来编写程序,包括如下几项:

ü 字符集unicode

ü 区分大小写 (true和TRUE)

ü 忽略空白字符(空格、制表符和换行符)

ü 注释

ü 标识符和关键字(保留字)

解释:

命名:英文命名;

空白:由于js会忽略这些空白字符,那么我们在书写代码的时候,就可以更好的利用缩进、换行和空格更好的组织我们的代码,使其更加清晰。一般建议缩进4格

换行:js中一条语句以分号结束;但js中换行也表示一条语句的结束;因此在js中分号可以省略;但不建议省略。

注释非常重要。注释在编程语言中比重50%。

在js中,注释有如下两种写法:(重点)

ü 单行://

ü **多行: ** /**/

注意:

ü 注释的内容是不会被浏览器解析,是一个解释说明的信息,只是提供给程序员看

ü 多行注释不能嵌套使用

img

标识符和关键字(保留字)

在实际编写js的过程中,需要定义大量的变量和函数,来实现所需功能。其实这些变量和函数的名称就是标识符。

标识符的命名规则:(重点)

1)由数字、字母、下划线或$(美元符)组成;

2)不能以数字开头;并且区分大小写;

3)不能用关键字,保留字命名;

4)建议驼峰命名;

关键字:在js中已经有特殊意义的词;如:var typeof if for

保留字:将来可能会成为关键字的。如name;

关于关键字和保留字,可以参考http://www.runoob.com/js/js-reserved.html

小驼峰:从第二个单词开始,每个单词首字母大写 如: myAge

大驼峰: 每一个单词的首字符都大写;如:MyAge

最佳实践:标识符(如变量、函数)命名采用小驼峰式命名方法

#2.变量和值

#(1).变量概念(变量名和值)

先看代码:

img

**变量:**变量是一个可以存储单个可变信息的容器;

变量是由两个部分构成的:

ü 变量名:一般来说,等号左边的内容为变量名

ü 变量值:一般来说,等号右边的内容为变量值

#(2).如何声明变量

关键字:声明变量的关键字是var

a. 单独声明

一次性声明一个变量,每一个变量需要使用一个var。

![img](file:////Users/sairitsutakara/Library/Group%20Containers/UBF8T346G9.Office/TemporaryItems/msohtmlclip/clip_image020.jpg)

b. 一次性声明多个

只需要一个var关键字,然后就可以声明多个变量。

img

c. 重复声明 (了解)

在js中,是允许重复声明变量的,不会出错。如下:

d. 遗漏声明 (了解)

在js中,允许遗漏声明,不会出错,如下:

img

#(3).全局变量、局部变量

全局和局部是指变量的生效范围,在哪些地方能够起作用,能使用的。

全局和局部是以函数作为分界线的。

注意:javascript中没有常量

在js中,变量的值是可以改变的,也就是可以变化的。如下:

常量则是值某个标识符的值一旦确定,就不能改变。但是js中不支持。

最佳实践:

ü 总是使用var来声明一个变量

变量要先声明后使用

#3、三种输出方式:

**1、 ** **alert(); ** 弹出框

**2、 ** **console.log(); ** 在控制台输出;

**3、 ** **document.write(); ** 在页面输出;

**区别 ** **:**document.write()识别标签,其他两种不识别

img

img

#4.简单的dom操作

#什么是dom操作?

u DOM是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口

u 在HTML和JavaScript的学习中,DOM操作可谓时重中之重

#Dom树

#DOM节点的分类:

u DOM节点分为三大类:元素(标签)节点、属性节点、文本节点;

#节点之间的关系:

u 由DOM树我们可以看到,文本节点、属性节点属于元素节点的子节点

u 在操作元素节点和文本节点前,一定要先获取到元素节点

#查找dom节点:

#通过ID名查找dom元素

**语法 ** **:**document.getElementById(“id名”)

功能:找页面中对应id名的元素;

返回值:dom元素

返回值类型:object;

说明:getELementById()前面必须的document对象(即文档对象)

​ 如果页面中没有这个id元素,返回null;

#通过标签名找元素

语法1:document.getElementsByTagName(“标签名”)

功能:获取页面中所有指定标签;

返回值:返回一个类数组(即一个集合);换句话说,就是将页面中所有的指定标签放在一个方括号的集合里面

img

获取具体的某个元素;

#元素内容

#获取元素的内容

语法:元素.innerHTML;

说明:获取到的内容都是string 类型;

#修改设置元素的内容

语法:元素.innerHTML = ‘内容’

说明:会覆盖;

#元素的行内样式

#获取元素的行内样式 style

img

语法:元素.style.css属性;

注意:复合属性需要转驼峰;

#设置元素的行内样式

语法:元素.style.css属性 = 属性值;

补充

#元素的html属性;

#获取元素的html属性

语法:元素.html属性

Eg: 元素.id 元素.src 元素.alt 元素.value 等;

#设置修改元素的html属性

语法:元素.属性 = 属性值;

初始

修改后

#小结:

\1. js中严格区分大小写

\2. js中每一条语句以分号结尾。(可以省略,但不建议)

\3. js中注释分为 单行 // 多行/**/

\4. 标识符的命名规则(重点)

\5. 变量:可以存储单个可变信息的容器

\6. Var是声明变量的关键字(重点)

\7. 变量的赋值

\8. 通过id名查找dom元素(重点)

\9. 通过标签吗查找dom元素(重点)

\10. 通过innerHTML属性获取或设置元素的内容(重点)

\11. 通过style属性获取或设置元素的行内样式(重点)

\12. 获取设置元素的html标准属性(重点)

\13. 通过className属性获取或设置元素的类名(重点)

js上 二.JavaScript基本语法的更多相关文章

  1. js上 初识JavaScript

    1.JavaScript简介 **JavaScript ** 是什么?(重点) Js是一种专门为网页交互设计的客户端(浏览器端)的脚本语言: Js与html和css有相似之处,都在浏览器端解析: Js ...

  2. js上 二十、综合案例

    二十.综合案例 题目一: **1. ** 数组随机 描述,写randomArray函数,传递一个数组,传递一个数值,返回一个指定个数的随机的新数组,不允许有重复数据 用例: randomArray([ ...

  3. JavaScript(js)获取本周,本月,本季,本年,上月,上周,上季,去年,上二周,上二月的时间段的代码

    function dateChange(name){ var beginTimeObject = document.getElementById("beginTime"); var ...

  4. JavaScript(js)/上

    JavaScript(js) ECMA-----定义的基础语法 DOM------document  object  model BOM------Browser  object  model Jav ...

  5. atitit.javascript js 上传文件的本地预览

    atitit.javascript js 上传文件的本地预览 1. .URL.createObjectURL  1 1.1. 吊销所有使用 URL.createObjectURL 而创建的 URL,以 ...

  6. 【repost】JavaScript 基本语法

    JavaScript 基本语法,JavaScript 引用类型, JavaScript 面向对象程序设计.函数表达式和异步编程 三篇笔记是对<JavaScript 高级程序设计>和 < ...

  7. js进阶 10-2 JQuery基础语法是什么

    js进阶 10-2 JQuery基础语法是什么 一.总结 一句话总结: 1.jquery语法超级简单:基础语法是:$(selector).action() 2.jquery选择的时候是带了引号的,肯定 ...

  8. 从 Vue 的视角学 React(二)—— 基本语法

    基于 Vue.js 开发的时候,每个 vue 文件都是一个单独的组件,可以包含 HTML,JS,CSS 而 React 是以函数为基础,每个 function 就是一个组件.虽然 JSX 让 HTML ...

  9. JavaScript交互式网页设计 • 【第1章 JavaScript 基本语法】

    全部章节   >>>> 本章目录 1.1 JavaScript 概述 1.1.1 JavaScript 简介 1.1.2 JavaScript 的概念和执行原理 1.1.3 J ...

随机推荐

  1. 【建议收藏】阿里P7总结的Spring注解笔记,把组件注册讲的明明白白

    环境搭建 注解的方式是通过配置类的方式来注入组件,注解注入要比XML注入的方式简单,注解注入也需要在前者的基础上,添加一个spring-context的包,也是实际开发中常用的方式. 准备所需Jar包 ...

  2. 深度分析:Java中如何如理异常,一篇帮你搞定!

    异常的背景 初识异常 我们曾经的代码中已经接触了一些 "异常" 了. 例如: 除以 0 System.out.println(10 / 0); // 执行结果 Exception ...

  3. Vegas视频的音频叠加效果怎么实现,可以用其他软件吗

    有时我们会用Vegas为某段影片配音,我们要怎么把配音和背景声融合在一起呢?想必马上会有人反应过来:让配音和背景声分别置于两条轨道上就好了.这当然是一个相当好的方式. 可是,如果我想要把两段音频合成一 ...

  4. kafka对接Rancher日志

    kafka对接Rancher日志 目录 kafka对接Rancher日志 概述 环境准备 正常对接kafka集群 1.helm添加bitnami库 2.下载 kafka 对应的chart压缩文件 3. ...

  5. Python爬虫实现翻译功能

    前言 学了这么久的python理论知识,需要开始实战来练手巩固了. 准备 首先安装爬虫urllib库 pip install urllib 获取有道翻译的链接url 需要发送的参数在form data ...

  6. yum安装软件时报错libmysqlclient.so.18()(64bit)

    错误信息 yum -y install sysbench 安装sysbench提示缺少依赖包如下图: 主要原因 缺少Percona-XtraDB-Cluster-shared-55-5.5.37-25 ...

  7. C语言讲义——运算符(operator)

    运算符(operator) 算数运算符 7种 关系运算符 6种 逻辑运算符 3种 位运算符 6种 赋值运算符 11种 共5类33种 算术运算符 加 + 减 - 乘 * 除 / 取余 % (仅限于整数类 ...

  8. seata

    启动seataserver: 回滚日志: server日志: file模式的文件 整个过程如果观察数据库变化的话,会发现事务是先提交了的,出现异常之后由seata又回滚回去

  9. mq checkpoint文件

    记录comitlog,consumeQueue,Index文件的刷盘时间点,文件固定长度4k,其中只用该文件的24个字节,其存储格式: 8字节physicMsgtimestamp+8字节logicsM ...

  10. Java 关于策略模式+简单工厂模式下的思考

    导读 最近在做公司一个消息网关的服务,包括:短信.微信.邮件等,所有请求通过一个入口,方便接口的管理(记录日志.接口限流白名单啥的).如何写这个接口呢,还有为了以后扩展,对接过短信.微信.公众号的童鞋 ...