《DOM Scripting》学习笔记-——第二章 js语法
《Dom Scripting》学习笔记
第二章 Javascript语法
本章内容:
1、语句。
2、变量和数组。
3、运算符。
4、条件语句和循环语句。
5、函数和对象。
语句(statements)
注释(comments)
方法:
1、// Note to self: comments are good.
2、/* Note to self:
comments are good */
3、<!— This is
a comment in JavaScript.
(In HTML, you would need to close the comment with —>:
<!— This is a comment in HTML —>)
变量(variables)
声明(declare)变量:
1、
var mood;
var age;
2、
var mood, age;
声明变量并赋值(assignment):
1、
var mood =
"happy";
var age = 33;
2、 var mood = "happy", age = 33;(最有效的方法)
3、
var mood, age;
mood = "happy";
age = 33
变量的数据类型(Data types)
一、字符串(strings)
格式:用单引号或双引号包含字符串内容。
var mood = 'happy';
var mood = "happy";
防止字符串逃逸(escaping)的方法:
var mood = 'don\'t ask';
var height = "about 5'10\" tall";
二、数值(numbers)
三、布尔值
取值:true或false
区分字符串“true”与布尔值true:
This
will set the variable married to the Boolean value true:
var married = true;
In this case, married is a string containing the word “true”:
var married =“true”
四、数组
由名字相同的多个值构成的一个集合,集合中每个值都是数组的元素。
一、声明、填充数组的方法:
1、
var beatles = Array(4);
beatles[0] = "John";
beatles[1] = "Paul";
beatles[2] = "George";
beatles[3] = "Ringo";
2、
var beatles =
Array("John","Paul","George","Ringo");
3、
var beatles =
["John","Paul","George","Ringo"];
二、数组的元素种类
字符串、数值、布尔值、变量、数组
var lennon = Array("John",1940,false);
var beatles = Array();
beatles[0] = lennon;
三、关联数组
元素下标不是整数数字,是字符串。可以提高脚本可读性。
var beatles = Array();
beatles["vocalist"] = lennon
操作
算数运算符
+
将数值和字符串相加会得到字符串
alert ("10" + 20);//1020
alert (10 + 20);//30
条件语句
if (condition) {
statements;
}
条件的求值结果永远是一个布尔值,花括号中的语句,只有在给定条件的求职结果是true时才会得到执行。
比较操作符:=、==、!=
逻辑操作符:&&(与)、||(或)、!(非)
循环语句
While
while (condition) {
statements;
}
do…while
do {
statements;
} while (condition);
for
for (initial condition; test condition; alter condition) {
statements;
}
等同于
initialize;
while (condition) {
statements;
increment;
}
函数
定义函数
function name(arguments) {
statements;
}
函数返回值:数值、字符串、数组、布尔值
变量作用域(scope)
全局变量(global variable)
局部变量(local variable)
如果在某个函数中使用了var,那个变量就是一个局部变量,它将只存在于这个函数的上下文中;若没有使用var,那么就是一个全局变量。如果脚本中存在一个与之同名的变量,这个函数将覆盖那个现有的值。
function square(num) {
total = num * num;
return total;
}
var total = 50;
var number = square(20);
alert(total);
//弹出400
function square(num) {
var total = num * num;
return total;
}
var total = 50;
var number = square(20);
alert(total);
//弹出50
对象(objects)
对象是自我包含的数据集合,包含在对象里的数据可以通过属性和方法两种方式访问。
属性(properties):是隶属于某个特定对象的变量。
方法(methods):是只有某个特定对象才能调用的函数。
用户定义对象(user-defined
objects)。
内建对象(native objects)。
宿主对象(host objects):js中一些已经预先定义好的对象,不是由js语言本身而是由它的运行环境提供的,就是各种web浏览器。由web浏览器提供的预定义对象成为宿主对象。
整理的思维导图:
《DOM Scripting》学习笔记-——第二章 js语法的更多相关文章
- JavaScript DOM编程艺术学习笔记-第二章JavaScript语法
一.JavaScript示例 <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...
- The Road to learn React书籍学习笔记(第二章)
The Road to learn React书籍学习笔记(第二章) 组件的内部状态 组件的内部状态也称为局部状态,允许保存.修改和删除在组件内部的属性,使用ES6类组件可以在构造函数中初始化组件的状 ...
- [HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的“HT”
[HeadFrist-HTMLCSS学习笔记]第二章深入了解超文本:认识HTML中的"HT" 敲黑板!!! 创建HTML超链接 <a>链接文本(此处会有下划线,可以单击 ...
- 第二章 Js语法
来博客园已经有二年了,看了看自己发布的内容,少的可怜.完全背离了自己的初衷.how time fly,想着自己两年后,还是没写什么东西,岂不是白白浪费时间!有感于王宝强说的那句话,“好好活着,做有意义 ...
- c#高级编程第七版 学习笔记 第二章 核心c#
第二章 核心C# 本章内容: 声明变量 变量的初始化和作用域 C#的预定义数据类型 在c#程序中使用条件语句.循环和跳转语句执行流 枚举 名称空间 Main()方法 基本的命令行c#编译器选项 使用S ...
- [HeadFirst-JSPServlet学习笔记][第二章:高层概述]
第二章:高层体系结构 容器 1 什么是容器? servelet没有main()方法.它们受控于另一个Java应用,这个Java应用称为容器(Container) Tomcat就是这样一个容器.Web服 ...
- 《Python基础教程(第二版)》学习笔记 -> 第二章 列表和元组
本章将引入一个新的概念:数据结构. 数据结构是通过某种方式阻止在一起的数据元素的集合,这些数据元素可以是数字或者字符,设置可以是其他数据结构. Python中,最基本的数据结构是序列(Sequence ...
- Java 学习笔记 ------第二章 从JDK到IDE
本章学习目标: 了解与设定PATH 了解与指定CLASSPATH 了解与指定SOURCEPATH 使用package与import管理类别 初步认识JDK与IDE的对应关系 一.第一个Java程序 工 ...
- JavaScript高级程序设计学习笔记第二章
1.向 HTML 页面中插入 JavaScript 的主要方法,就是使用<script>元素 2.HTML 4.01中定义了<script>元素的六个属性(方便记忆,可将6个属 ...
随机推荐
- 使用CSMA/CD协议一个计算题
题干: 首先计算一下A这个以太网所容许的最短的帧它的发送帧的长度时间为: (8(前同步码为8)+64(最短帧长))*8(单位转换b到B)=576比特 有关于单位转换: B是Byte的缩写,B就是Byt ...
- Address localhost:1099 is already in use
在 ItelliJ idea中创建了Servlet,启动tomcat时系统报错: Error running Tomcat 7.0.47: Address localhost:1099 is alre ...
- scrapy框架之递归解析和post请求
递归爬取解析多页页面数据 scrapy核心组件工作流程 scrapy的post请求发送 1.递归爬取解析多页页面数据 - 需求:将糗事百科所有页码的作者和段子内容数据进行爬取切持久化存储 - 需求分析 ...
- RabbitMQ学习之旅(一)
RabbitMQ学习总结(一) RabbitMQ简介 RabbitMQ是一个消息代理,其接收并转发消息.类似于现实生活中的邮局:你把信件投入邮箱的过程,相当于往队列中添加信息,因为所有邮箱中的信件最终 ...
- python------Socket网络编程(二)粘包问题
一.socket网络编程 粘包:服务端两次发送指令在一起,它会把两次发送内容合在一起发送,称为粘包,从而出现错误. 解决方法:(比较low的方法) 有些需要实时更新的,用sleep有延迟,不能这样解决 ...
- uboot下读取flash,上传tftp服务器、下载
上传 setenv gatewayip 192.168.1.1; setenv serverip 192.168.1.7; setenv ipaddr 192.168.1.156 ; mw.b 0x8 ...
- cmake编译obs
https://blog.csdn.net/su_vast/article/details/74984213 https://blog.csdn.net/u011258240/article/deta ...
- CMake for MFC example
cmake_minimum_required(VERSION 2.8) add_definitions(-D_AFXDLL) set(CMAKE_MFC_FLAG 2) set(SRCS MFCApp ...
- js 遍历EL表达式 list对象
无法直接通过"${topicList}"获取对象,需要通过<c:forEach>获取list里的对象: var topicListArry = new Array(); ...
- 根据CPU核心数确定线程池并发线程数
一.抛出问题 关于如何计算并发线程数,一般分两派,来自两本书,且都是好书,到底哪个是对的?问题追踪后,整理如下: 第一派:<Java Concurrency in Practice>即&l ...