JavaScript运算符:

算术运算符、赋值运算符和字符串连接运算符。

算法运算符与复制运算符用法参照Java;

字符串运算符:

+运算符用于把文本值或字符串变量连接起来,适用于两个或更多字符串变量连接。数字与字符串进行+运算结果为字符串。

 <!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>just test</title>
</head>
<body>
<p id="test"></p> <script>
function myFunction(a,b)
{
return a+b;
}
document.getElementById("test").innerHTML = myFunction("hello ","edward");
//myFunction函数的返回值作为值向id为test的HTML元素输出文本
</script> </body>
</html>

demo

比较运算符:

参照Java比较运算符用法,例外:===表示“绝对等于”,即变量的值和类型均相等。

逻辑运算符:

&&、||、!

条件运算符(三元运算):

(condition)?value1:value2

 var a = 1,b = 2,c;
c = (a == b)?a:b;

demo

流程语句(条件语句):

参照Java语法或C语言语法。

循环语句:

for循环:

for(语句1;语句2;语句3){

  循环代码块;

}

语句1开始时执行,语句2为循环条件,语句3在循环代码块执行完一次后执行,执行完语句3后又回过头执行语句2判定循环条件。

执行顺序为:语句1----->语句2------>循环代码块------->语句3------>语句2------->循环代码块------->语句3......

for/in循环:

循环遍历对象的属性,还可以用于遍历数组

 var person={fname:"John",lname:"Doe",age:25}; 

 for (x in person)
{
txt=txt + person[x];
}

demo

while循环:

在指定条件为true时循环执行代码块,先判定条件再进行执行,若初始条件为false则循环代码块一次都不会执行。

do/while循环:

会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。无论如何循环代码块都被执行一次。

break和conitnue语句:

break可用于跳出条件语句switch( ),也可用于跳出循环。

continue语句用于中断循环中的迭代,如果出现了指定的条件,然后继续执行循环中的下一个迭代。

 /****
*break跳出循环,循环结束,不再执行
*例中循环执行到i=3时就跳出循环不再执行
****/
for (i=0;i<10;i++)
{
if (i==3)
{
break;
}
x=x + "The number is " + i + "<br>";
} /*****
*continue中断循环,出现符合循环的条件后继续执行循环
*例中循环执行到i=3时不执行循环体,但是计量单位i会继续自增,当i=4时循环继续执行
*****/
for (i=0;i<=10;i++)
{
if (i==3) continue;
x=x + "The number is " + i + "<br>";
}

比较

JavaScript标签:

JS语句可以进行标记,在语句前加上冒号。

continue只能用于循环语句中,break通过标签引用可以跳出任何JS代码块。

 cars=["BMW","Volvo","Saab","Ford"];
list:
//将一系列写文本语句标记为代码块list
{
document.write(cars[0] + "<br>");
document.write(cars[1] + "<br>");
document.write(cars[2] + "<br>");
break list;
//使用break带标签引用跳出代码块
document.write(cars[3] + "<br>");
document.write(cars[4] + "<br>");
document.write(cars[5] + "<br>");
}

标签

类型转换:

(1)5种数据类型:string、number、boolean、object、function

(2)3种对象类型:Object、Date、Array

(3)2两种不包含任何值的数据类型:null、undefined

使用typeof操作符可以查看变量数据类型,日期和数组是例外,返回值都是object,可以用constructor属性返回构造函数来区分是不是数组(返回Array())。

将number、boolean、Date转化成字符串:全局方法String( ),私有方法toString( )。

其他类型转换方法较为简单,重复性高,需要使用时搜一搜就能知道。

正则表达式:

正则表达式是由一个字符序列形成的搜索模式,在搜索数据的时候可以用来描述目标内容,可用于所有文本搜索和替换的操作。

 var patt = /w3cschool/i
/******
/w3cschool/i 是一个正则表达式。 w3cschool 是一个模式 (用于检索)。 i 是一个修饰符 (搜索不区分大小写)。
*****/

demo

通常用于两个字符串方法:search( )和replace( )

search()用于检测字符串中指定子串,返回子串的起始位置。

 var str = "Visit w3cschool";
var n = str.search(/w3cschool/i);
//输出结果为6

search

replace()用于在字符串中用一些字符替换一些字符,或者替换一个与正则表达式匹配的子串.

 var str = "Visit Microsoft!";
var res = str.replace(/microsoft/i, "w3cschool");
//输出结果为Visit w3cschool!

demo

正则表达式修饰符:

修饰符 描述
i 执行对大小写不敏感的匹配
g 执行全局匹配(查找所有匹配,而不是找到都一个匹配后就停止)
m 执行多行匹配

正则表达式模式:

表格很繁多,请进入W3CJS教程正则表达式详细细节查看.

JavaScript入门学习笔记(二)的更多相关文章

  1. JavaScript入门-学习笔记(二)

    关于js变量 变量,就是一个用来存储数据的容器 一般来说,我们的变量都是可以得先声明,再使用,就像是一个东西先必须存在,才能看得见摸得着.然而在js里(es5),可以先使用,后声明. a = 100; ...

  2. JavaScript正则表达式学习笔记(二) - 打怪升级

    本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...

  3. JavaScript入门-学习笔记(一)

    JavaScript入门(一) 学习js之前,我们先来了解一下,什么是JavaScript? JavaScript是一种解释型语言.在运行的时候,一边读一边编译一边执行.简单来说就是,在执行js代码时 ...

  4. JavaScript入门学习之二——函数

    在前一章中讲了JavaScript的入门语法,在这一章要看看函数的使用. 函数的定义 JavaScript中的函数和Python中的非常类似,只不过定义的方式有些不同,下面看看是怎么定义的 //定义普 ...

  5. javascript入门学习笔记2

    JavaScript 拥有动态类型.这意味着相同的变量可用作不同的类型: 实例 var x // x 为 undefined var x = 6; // x 为数字 var x = "Bil ...

  6. javascript入门学习笔记

    <button type="button" onclick="alert('Welcome!')">点击这里</button>alert ...

  7. JavaScript入门学习笔记(JSON)

    JSON是JavaScript Object Notation的简称,是一种轻量级的数据交换格式. JSON使用JS的语法,但其格式只是一个文本,可以被任何编程语言读取病作为数据格式传递. JSON以 ...

  8. JavaScript入门学习笔记(异常处理)

    try:语句测试代码块的错误,当try中的代码块出错时执行catch中的代码块. catch:语句处理错误: throw:语句创建或抛出自定义异常. 三者一起使用可以控制程序流并生成自定义异常信息. ...

  9. JavaScript入门学习笔记(一)

    W3cJavaScript教程 JS是JavaScript的缩写,而JSP是Java Server Page的缩写,后者是用于服务器的语言. JavaScript代码写在标签<script> ...

随机推荐

  1. Java JPA @Transient 在Hibernate中应用

    jpa @Transient - 走过程序员的路 - CSDN博客https://blog.csdn.net/lafengwnagzi/article/details/55511066 Hiberna ...

  2. Visual Studio Code常用设置及快捷键

    1. Visual Studio Code常用设置 { // 控制是否显示 minimap(缩略图) "editor.minimap.enabled": false, // 控制折 ...

  3. vhdl 数据类型转换 使用IEEE标准库numeric_std 需要进行两次转换 use ieee.numeric_std.all;

    use ieee.numeric_std.all;

  4. Elasticsearch6.x和Kibana6.x的安装

    Elasticsearch6.x的安装(centos6.x下) Elasticsearch6.x目前需要至少jdk8的支持,关于如何安装jdk不在讲述.Oracle的推荐安装文档可以在Oracle的网 ...

  5. Kubernetes之ServiceAccount

    ServiceAccount 是什么 Service Account为Pod中的进程和外部用户提供身份信息.所有的kubernetes集群中账户分为两类,Kubernetes管理的serviceacc ...

  6. CMDB服务器管理系统【s5day88】:采集资产之Agent、SSH和Salt模式讲解

    在对获取资产信息时,简述有四种方案. 1.Agent  (基于shell命令实现) 原理图 Agent方式,可以将服务器上面的Agent程序作定时任务,定时将资产信息提交到指定API录入数据库 优点: ...

  7. Deepin linux 远程桌面无法被Ubuntu连接

    linux下远程桌面的工具还是有很多的,这个方法主要是解决Ubuntu自带的 Remmina无法远程 Deepin 桌面. 1.安装vncserver的基础服务,输入以下命令: sudo apt-ge ...

  8. LFYZ-OJ ID: 1026 数的计数(数的计算)NOIP2001

    数的计算(数的计数) 题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数n).先输入一个自然数n(n<=1000),然后对此自然数按照如下方法进行处理: 不作任何处理; 在它的左边加上 ...

  9. Andrew Ng机器学习公开课笔记 -- 线性回归和梯度下降

    网易公开课,监督学习应用.梯度下降 notes,http://cs229.stanford.edu/notes/cs229-notes1.pdf 线性回归(Linear Regression) 先看个 ...

  10. Promise异步操作

    Promise是es6中新增加的类(new Promise),目的为了管理JS中异步编程,也叫“Promise”设计模式 Promise用来解决异步问题.本身是同步的,只是用来管理异步编程的一种模式 ...