JavaScript基础学习笔记(二)——操作符、语句、函数

原创 2016年09月01日 16:03:12

操作符

1. 一元操作符
1)递增和递减操作符(++/–):前置在被求值之前执行,后置在之后
2) 一元加和减操作符

2. 位操作符
1)按位非(~)
2)按位与(&)
3)按位或(|)
4)按位异或(^):同为0异为1
5)左移(<<)
6)右移(>>)

var old = 2;    //等于二进制的10
var new = old << 5;     //等于二进制的1000000,十进制的64

3. 布尔操作符
1)逻辑与(&&):如果第一个操作数可以决定结果,则不会再对第二个操作数求值。
2)逻辑或(||)
3)逻辑非(!)

alert(!false);  //true
alert(!"blue"); //false
alert(!0);  //true
alert(!NaN);    //true
alert(!""); //true
alert(!12345);  //false

4. 乘性操作符
1)乘法(*)
2)除法(/)
3)求模(%)

5. 加性操作符
1)加法:如果只有一个操作符是字符串,则将操作数转换为字符串,然后再将两个字符串拼接起来。
var result = 5 + "5"; //"55"
2)减法

6. 关系操作符
小于(<)、大于(>)、小于等于(<=)、大于等于(>=)这几个关系操作符都返回一个布尔值。如果两个操作数都是字符串,则比较两个字符串所对应的字符编码值;如果其中一个是字符串,则将其转换为数值再进行比较。

var result1 = "Brick" < "alphabet"; //true "B"的字符编码小于"a"
var result2 = "Brick".toLowerCase() < "alphabet".toLowerCase(); //false
var result3 = "23" < "3";   //true "2"的字符编码比"3"var result4 = "23" < 3; //false "23"被转换为23 

7. 相等操作符
1)相等与不相等(==):先转换再比较
2)全等与不全等(===):不转换直接比较

var result1 = ("55" == 55); //true "55"被转换为55
var result2 = ("55" === 55);    //false

8. 条件操作符
var max = (num1 > num2) ? num1 : num2 //取两者最大值

9. 赋值操作符

10. 逗号操作符
var num1 = 1, num2 = 2, num3 = 3

语句

1. if语句
最佳实践是始终使用代码块

if(i >25) {
    alert("More than 25.");
} else if (i < 0) {
    alert("Less than 0.");
} else {
    alert("Between 0 and 25");
}

2. do-while语句
后测试循环语句,常用于循环体中代码至少要被执行一次的情形。

do {
    statement
} while (expression);

3. while语句
前测试循环语句
while(expression) statement

4. for语句
前测试循环语句,使用while做不到的,for也做不到,只是把与循环相关的代码集中在了一个位置。
for (;;) //无限循环

5. for-in语句
用来枚举对象的属性

for (var propName in window) {
    document.write(propName);
}

6. label语句
在代码中添加标签,与for语句等配合使用。

7. break和continue语句
break语句立即退出循环,强制继续执行循环后面的语句;
continue语句立即退出循环,但退出后会从循环的顶部继续执行。

var num = 0;
for (var i=1; i < 10; i++) {
    if (i % 5 == 0) {
        //break;continue;
    }
    num++;
}
alert(num); //4,8

8. with语句
将代码的作用域设置到一个特定对象中,严格模式不允许使用。

9. switch语句

switch (i) {
    case 1:
        alert("1");
        break;
    case 2:
        alert("2");
        break;
    case 3:
        alert("3");
        break;
    default:
        alert("Other");
}

函数

function name(arg0, arg1,...,argN) {
    statements
};

1)函数在定义时不必指定是否返回值;
2)函数在执行return语句之后停止并立即退出,其后的任何代码永远不会执行;
3)return语句也可以不带有任何返回值,只用作停止函数,将会返回一个undefined值;
4)参数类型、个数完全自由,可以通过arguments对象访问参数数组,arguments.length获取参数个数,arguments和参数对应值保持同步;

function doAdd() {
    alert(arguments.length);
    if(arguments.length == 1) {
        alert(arguments[0] + 10);
    } else if (arguments.length == 2) {
        alert(arguments[0] + arguments[1]);
    }
}
doAdd(10);  //1,20
doAdd(30, 20);  //2,50

5)没有传递值得命名参数将被自动赋予undefined值;
6)没有函数签名,无法实现函数重载。

版权声明:本文为博主原创文章,未经博主允许不得转载。

MySQL学习笔记---基础概念和一些基础SQL语句(一)

MySQL学习笔记,以防遗忘 数据库基本概念 数据库:保存有组织的数据的容器(通常是一个文件或一组文件)。 表:某种特定类型数据的结构化清单,数据库中的表都有一个唯一的名字用来标识自己。 模式:关于数...
  • Jung_zhang
  • Jung_zhang
  • 2016年04月14日 20:11
  • 1722

javascript基础学习笔记

编者寄言:  本文主要为编者读书笔记,在文章里面很多话是掺杂了编者自己的见解,如果有哪里出现错误或者用词不严谨,请友善留言,编者会及时去更改。 本文很多地方只是简单说了一下应该注意的地方,具体代码部分...
  • u012967849
  • u012967849
  • 2016年07月20日 14:08
  • 1908

Python3 基础学习笔记

Python3 基础学习笔记这篇博客不是完整的python教程,只是我在学习python3时记下的一些容易忘记的或比较重要的知识点,里面的代码大多是转自 廖雪峰的python3教程 和 菜鸟教程 。不...
  • Cyiano
  • Cyiano
  • 2017年04月10日 19:58
  • 750

机器学习基础(林軒田)笔记之五

本文为国立台湾大学林軒田老师机器学习基石课程第五讲的笔记。
  • xiong452980729
  • xiong452980729
  • 2016年07月05日 16:10
  • 740

Hibernate学习笔记(一)——简单的Hibernate实例入门

一、Hibernate简介 Hibernate是一个开源的对象/关系映射(ORM)框架,它对JDBC进行了轻量级的封装。所谓ORM就是Object/Relationship Mapping,为什么要...
  • u011024652
  • u011024652
  • 2016年09月19日 20:32
  • 866

[学习笔记]JavaScript之DOM基础

DOM概述 DOM定义 DOM(文档对象模型,Document Object Model)是W3C组织开发的一套便于操作XML和HTML的JavaScript方法,其将XML和HTML抽象成文...
  • jacobvv
  • jacobvv
  • 2015年01月18日 22:20
  • 1305

javascript学习笔记

第一章 一、JavaScript概述 JavaScript是基于对象和事件驱动的脚本语言,主要应用在客户端。 特点: 1.交互性(它可以做的就是信息的动态交互) 2.安全性(它不允许直接访问本地硬盘...
  • zhoulenihao
  • zhoulenihao
  • 2013年09月04日 23:04
  • 3991

深度学习word2vec笔记之算法篇

深度学习word2vec笔记之算法篇
  • mytestmy
  • mytestmy
  • 2014年05月25日 20:03
  • 33339

javascript—新手必备、零基础学习

本书目录 第一章:  JavaScript语言基础 第二章:  JavaScript内置对象 第三章:  窗口window对象 第四章:  文档document对象 第五章:  表单form对象 第...
  • u013321328
  • u013321328
  • 2015年02月06日 13:27
  • 1661

计算机网络基础学习笔记

1.基本概念划分 OIS的七层协议: 应用层、表示层、会话层、运输层、网络层、数据链路层、物理层。    OIS的五层协议: 应用层、运输层、网络层、数据链路层、物理层...
  • basycia
  • basycia
  • 2016年07月11日 13:57
  • 16525
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JavaScript基础学习笔记(二)——操作符、语句、函数
举报原因:
原因补充:

(最多只允许输入30个字)