JavaScript基本语法(二)
上篇博文写到JavaScript的数据类型。JavaScript包括了字符串(String)、数字(Number)、布尔(Boolean)、数组(Array)、对象(Object)、空(Null)、未定义(Undefined)。
一、Javascript 数组
数组可以用一个变量名存储所有的值,并且可以用变量名访问任何一个值。
数组中的每个元素都有自己的的ID,以便它可以很容易地被访问到。
创建数组的三种方法:
(1)、常规方法
var myCars=new Array();
myCars[0]="A";
myCars[1]="B";
myCars[2]="C";
(2)、简洁方法
var myCars=new Array("A","B","C");
(3)、字面
访问数组
通过指定数组名以及索引号码,你可以访问某个特定的元素。
以下实例可以访问myCars数组的第一个值:
以下实例修改了数组 myCars 的第一个元素:
在 JavaScript 中 null 表示 "什么都没有"。 null是一个只有一个值的特殊类型。表示一个空对象引用。
var person = null; 你可以设置为 null 来清空对象。
Undefined 在 JavaScript 中, undefined 是一个没有设置值的变量。
三、数据类型的查看和转换
a.查看数据类型 typeof。使用 typeof 操作符来查看 JavaScript 变量的数据类型。
var mood = "happy";
alert(typeof mood);
请注意:
- NaN 的数据类型是 number
- 数组(Array)的数据类型是 object
- 日期(Date)的数据类型为 object
- null 的数据类型是 object
- 未定义变量的数据类型为 undefined
如果对象是 JavaScript Array 或 JavaScript Date ,我们就无法通过 typeof 来判断他们的类型,因为都是 返回 Object。
b.转换成字符串。
全局方法 String() 可以将数字转换为字符串。
该方法可用于任何类型的数字,字母,变量,表达式:
var married = false;
alert(married.toString()); // outputs “false” var age = 25;
alert(age.toString()); //outputs “25”
c.转换成数字
parseInt() 转换成整数
parseFloat() 转换成浮点数
例: var test = parseInt(“blue”); //returns NaN
var test = parseInt(“1234blue”); //returns 1234
var test = parseInt(“22.5”); //returns 22
四、算术运算符
JavaScript 运算符主要包括:
(1)、算术运算符:
| 运算符 | 说明 | 例子 | 运算结果 |
|---|---|---|---|
| + | 加 | y = 2+1 | y = 3 |
| - | 减 | y = 2-1 | y = 1 |
| * | 乘 | y = 2*3 | y = 6 |
| / | 除,返回结果为浮点类型 | y = 6/3 | y = 2 |
| % | 求余,返回结果为浮点类型 要求两个操作数均为整数 |
y = 6%4 | y = 2 |
| ++ | 递加,分为前加和后加 对布尔值和 NULL 将无效 |
y = 2 ++y(前加) y++(后加) |
y = 3 |
| -- | 递减,分为前递减和后递减 对布尔值和 NULL 将无效 |
y = 2 --y(前减) y--(后减) |
y = 1 |
对于前加和后加,执行后的结果都是变量加1,其区别在于执行时返回结果不一样,参考下面两个例子:
2;
alert(++x); //输出:3
alert(x); //输出:3
var y = 2;
alert(y++); //输出:2
alert(y); //输出:3
总结:前加的先执行后加1。后加的先加1后执行。递减同理。
(2)、赋值运算符
赋值运算符 = 用于赋值运算,赋值运算符的作用在于把右边的值赋值给左边变量。设定 y = 6,参见下表:
| 运算符 | 例子 | 等价于 | 运算结果 |
|---|---|---|---|
| = | y = 6 | � | y = 6 |
| += | y += 1 | y = y+1 | y = 7 |
| -= | y -= 1 | y = y-1 | y = 5 |
| *= | y *= 2 | y = y*2 | y = 12 |
| /= | y /= 2 | y = y/2 | y = 3 |
| %= | y %= 4 | y = y%4 | y = 2 |
(3)、比较运算符
| 运算符 | 说明 | 例子 | 运算结果 |
|---|---|---|---|
| == | 等于 | 2 == 3 | FALSE |
| === | 恒等于(值和类型都要做比较) | 2 === 2 2 === "2" |
TRUE FALSE |
| != | 不等于,也可写作<> | 2 != 3 | TRUE |
| > | 大于 | 2 > 3 | FALSE |
| < | 小于 | 2 < 3 | TRUE |
| >= | 大于等于 | 2 >= 3 | FALSE |
| <= | 小于等于 | 2 <= 3 | TRUE |
比较运算符也可用于字符串比较。
(4)、三元运算符
三元可以视作是特殊的比较运算符:
语法解释:当表达式的值为true时,执行表达式2,否则执行表达式3。
代码如下:
y = (x == 2) ? x :
1;
alert(y); //输出:2
该例子判断 x 的值是否等于 2,如果 x 等于 2,那么 y 的值就等于 x(也就是等于2),反之 y 就等于 1。
提示
为了避免错误,将三元运算符各表达式用括号括起来是个不错的主意。
(5)、逻辑运算符
| 运算符 | 说明 | 例子 | 运算结果 |
|---|---|---|---|
| && | 逻辑与(and) | x = 2; y = 6; x && y > 5 |
FALSE |
| || | 逻辑或(or) | x = 2; y = 6; x && y > 5 |
TRUE |
| ! | 逻辑非,取逻辑的反面 | x = 2; y = 6; !(x > y) |
TRUE |
(6)、字符串连接运算符
连接运算符 + 主要用于连接两个字符串或字符串变量。因此,在对字符串或字符串变量使用该运算符时,并不是对它们做加法计算。
代码如下:
y = x + "你好!"; //结果:y =
"JS你好!"
// 要想在两个字符串之间增加空格,需要把空格插入一个字符串之中:
y = x + " 你好!"; //结果:y = "beijing
你好!"
当对字符串和数字做连接(加法)运算时,会将数字先转换成字符串再连接(相加):
代码如下:
y = "我今年" + x + "岁"; //结果:y =
"我今年22岁"
JavaScript基本语法(二)的更多相关文章
- javascript高级语法二
一.BOM对象 1.什么是BOM对象? BOM是浏览器对象模型,核心对象就是window,所有浏览器都支持 window 对象.一个html文档对应一个window对象,主要功能是控制浏览器窗口的, ...
- JavaScript基本概念(二)
JavaScript 基本概念(二) 操作符和语句 目录 操作符 一元操作符 位操作符 布尔操作符 乘性操作符 其他操作符 语句部分 说起操作符,回忆下上一篇文章末尾说的话. 操作符 一元操作符 ++ ...
- javascript的语法作用域你真的懂了吗
原文:javascript的语法作用域你真的懂了吗 有段时间没有更新了,思绪一下子有点转不过来.正应了一句古话“一天不读书,无人看得出:一周不读书,开始会爆粗:一月不读书,智商输给猪.”.再加上周五晚 ...
- 【repost】JavaScript 基本语法
JavaScript 基本语法,JavaScript 引用类型, JavaScript 面向对象程序设计.函数表达式和异步编程 三篇笔记是对<JavaScript 高级程序设计>和 < ...
- 前端开发之JavaScript基础篇二
主要内容: 1.流程控制条件语句和switch语句 2.for循环和while循环 3.Break语句和Continue语句 4.数组和数组常用方法 5.函数 6.对象 一.流程控制条件语句和swit ...
- 任务十四:零基础JavaScript编码(二)
任务目的 在上一任务基础上继续JavaScript的体验 学习JavaScript中的if判断语法,for循环语法 学习JavaScript中的数组对象 学习如何读取.处理数据,并动态创建.修改DOM ...
- JavaScript学习记录二
title: JavaScript学习记录二 toc: true date: 2018-09-13 10:14:53 --<JavaScript高级程序设计(第2版)>学习笔记 要多查阅M ...
- Vue模板语法(二)
Vue模板语法(二) 样式绑定 class绑定 使用方式:v-bind:class="expression" expression的类型:字符串.数组.对象 1.2 style绑 ...
- 基础JavaScript练习(二)总结
任务目的 学习与实践JavaScript的基本语法.语言特性 练习使用JavaScript实现简单的排序算法 任务描述 基于上一任务 限制输入的数字在10-100 队列元素数量最多限制为60个,当超过 ...
- 零基础JavaScript编码(二)
任务目的 在上一任务基础上继续JavaScript的体验 学习JavaScript中的if判断语法,for循环语法 学习JavaScript中的数组对象 学习如何读取.处理数据,并动态创建.修改DOM ...
随机推荐
- iOS 真机调试不能连接网络的排错过程
开发环境: macOS 10.12.1 Xcode 8.1 Qt 5.8 gSOAP 2.8 iPhone 6S+iOS 10.1.1 问题: 使用 Qt Quick 写了一个跨平台的应用,在Wi ...
- UITableView 一直显示滚动条(ScrollBar Indicators)、滚动条Width(宽度)、滚动条Color(颜色)
在 IOS 中,对 UIScrollView 的滚动条(ScrollBar Indicators)的自定义设置接口,一直都是很少的.除了能自定义简单的样式(UIScrollViewIndicatorS ...
- Sql Server系列:通用表表达式CTE
1 CTE语法WITH关键字 通用表表达式(Common Table Express, CTE),将派生表定义在查询的最前面.要使用CTE开始创建一个查询,可以使用WITH关键字. CTE语法: WI ...
- sizzle编译函数
一个人去完成一件事情,如果派多个人去做的话,只要配合默契,效率比一个人做肯定要高,效率提高,所需的时间就减少了.如果只能一个人完成,那么必须设法提高自己的劳动效率,这个提高可以是量的改变也可以是质的改 ...
- Stackoverflow/dapper的Dapper-Extensions用法(一)
Dapper-Extensions Dapper Extensions is a small library that complements Dapper by adding basic CRUD ...
- Cesium原理篇:6 Render模块(4: FBO)
Cesium不仅仅提供了FBO,也就是Framebuffer类,而且整个渲染过程都是在FBO中进行的.FBO,中文就是帧缓冲区,通常都属于高级用法,但其实,如果你了解了它的基本原理后,用起来还是很简单 ...
- .net基本数据类型操作
代码编写的过程中,较多的会涉及到基本数据类型的使用和定义,在项目中,对于类型的判定和类型间的相互转换,有时也较为的麻烦,先提供几种基本数据类型的判断方法: 1.判断对象是否为Int32类型的数字: / ...
- MySQL常用SQL总结
1. 常见命令 连接本地数据库与远程数据库(172.16.xx.xx:3306): mysql -h localhost -u root -p123 mysql -h 172.16.xx.xx -P ...
- SQL Server时间粒度系列----第9节时间粒度示例演示
本文目录列表: 1.准备测试数据 2.向测试数据表添加相关时间粒度字段列 3.基于日月季年统计汇总的演示 4.总结语 5.参考清单列表 准备测试数据 为了提供不同时间粒度示例的演示,就需要测试 ...
- 图片全部加载完成之后再显示页面ui,公司项目里用上,自己写的几行代码
说明: -----onload事件 这里我并没有考虑ie的兼容性 因为项目是移动端的: -----求大神指正~ -----自己测试正常 页面没加载完之前会有一个提示 /************** ...