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. guitar pro系列教程(四): 详解Guitar Pro主音量自动化设置

    让我们继续进行guitar pro 7系列教程 在上一章节中我们讲到插入速度自动化设置,本章节我们将采用图文结合的方式详细的讲解guitar pro 7主音量的相关自动化设置分别是:插入主音量自动化, ...

  2. Postman实用小技巧

    Postman使用小技巧 软件测试工程师 张江涛 废话就不多说了,直奔主题,这里的技巧就以对话方式来阐述吧. 问:公司的环境也太多了吧,本地.开发.测试以及生产环境,这么多环境,每次使用的时候都要来回 ...

  3. 对数组进行排序成最小的,相当于自己实现了一次String的compareTo函数,不过是另类的。

    题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323. //一气呵成 ...

  4. zabbix地图显示全国延迟

    Zabbix 地图显示全国延迟 1.  效果图 2.  实现方法 将地图.png上传到zabbix为背景,上传红绿点.png为图标.然后新建主机关联模板为ICMP Ping,新建一个拓扑图调用地图为背 ...

  5. 【初等数论】裴蜀定理&扩展欧几里得算法

    裴蜀定理: 对于\(a,b\in N^*, x, y\in Z\),方程\(ax+by=k\)当且仅当\(gcd(a, b)|k\)时有解. 证明: 必要性显然. 充分性:只需证明当\(k=gcd(a ...

  6. mysql 优化数据类型

    1.更小的通常更好 选择不会超过范围的最小类型 2.简单就好 例如,整型比字符操作代价更低,因为字符集和校对规则(排序规则)使字符比较比整形比较更复杂. 3.尽量避免null 如果查询中包含可为nul ...

  7. python:列表的去重:两种方法的问题是:结果是没有保持原来的顺序。

    列表的去重 1.使用set的特型,python的set和其他语言类似, 是一个无序不重复元素集 orgList = [1,0,3,7,7,5] #list()方法是把字符串str或元组转成数组 for ...

  8. SpringBoot中的Tomcat是如何启动的?

    <dependency>    <groupId>org.springframework.boot</groupId>    <artifactId>s ...

  9. 【2014广州市选day1】JZOJ2020年9月12日提高B组T3 消除游戏

    [2014广州市选day1]JZOJ2020年9月12日提高B组T3 消除游戏 题目 Description 相信大家玩过很多网络上的消除类型的游戏,一般来说就是在一个大拼图内找出相同的部分进行最大程 ...

  10. BloomFilte布隆过滤器简介

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...