JavaScript是一种依托于网页为宿主的脚本语言,JavaScript是一门非常强大的语言,尤其对于web端,用途广泛,好用,偏向于操作网页,可以操作网页中的任何一个元素,JavaScript的缺点是是不能操作数据库,所以制作动态网页时需要结合其他语言来完成。

初学者可能会误以为JavaScript和Java语言之间有关系,虽然他们名字很像,他们确实是没有关系的。Java是sun公司的,该公司在2010年10月24日被oracle收购,oracle不仅是数据库的名字,oracle也就是大名鼎鼎的甲骨文公司。JavaScript是Netspace公司的,该公司1998年11月被AOL美国在线收购了。而JScript则是微软的,三者并没有太多关系。

JS可以嵌在网页的任何一个位置,也可以在外部。用<script>标签。

JS的注释语法分有单行注释和多行注释两种:

单行注释://后一行的内容会被注释

多行注释:/* 中间的内容会被注释 */

HTML:<!-- 中间的内容被注释 -->

css:/* 中间的内容被注释 */

JS的输出语法:

alert();输出其中的内容

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=10;
    alert("hello world"+"    "+i);
</script>

如图,<script>嵌在了网页的最下方:

用var定义了一个变量i,然后用alert输出可以看出,

1.“”中的内容会被直接输出

2.定义好的变量会输出变量的值而不是变量本身。

3.+号会把它们连起来输出

confirm();输出可选择的内容

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=confirm("确认吗");
    alert(i);
</script>

运行该代码后,会出现如下提示框:

如果点击确定:

如果点击取消:

由此可见,confirm不仅输出,还可以和用户简单的交流,如果用户点击确定,会返回true,如果用户点击取消,会返回false,confirm有且仅有这两个返回值。

prompt("");用户输入

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=prompt("请输入");
    alert(i);
</script>

运行后:

会出现一个输入的对话框,我们尝试输入一段文字:

点击确定后:

会返回用户输入的内容。

这里需要注意的是,用户输入的内容返回都是字符串形式。输入数字1,返回就是字符串‘1’。

数据类型:

计算机存储数据的时候并不是所有的数据都一样的,严格按照数据类型来存储。程序语言都绕不开数据类型,常见的数据类型有:

int  整数

float  单精度小数

double  双精度小数

decimal  小数

money  货币类型

char  字符

string  字符串

bool  布尔型,只有true和false

datetime  日期时间类型

强类型语言和弱类型语言:

说到类型,又分为强类型语言和弱类型语言,简单来说,强类型语言定义变量需要指定类型,比如C#,Java,假设你在c#代码中,你定义了一个整型变量后,就不能赋一个字符型数据给这个变量,除非你用强制类型转换,弱类型语言定义变量不需要指定类型,比如JavaScript,var 可以接受任何类型。

先记住慢慢理解:

强类语言使得对象处理的数据更容易被理解,而不需要与ADO.NET和XML编程模型打交道。这在大型系统里是很有用的,特别是当设计者定义了由自定义类所组成的数据访问层,并把设计向组织内的其他程序员发布的时候。当然,现在自定义类的使用有下降的趋势:它们需要编更多的代码,因为你必须创建.NET Framework所缺少的对象关系映射层。

强/弱类型是指类型检查的严格程度的。语言有无类型,弱类型和强类型三种。无类型的不检查,甚至不区分指令和数据。弱类型的检查很弱,仅能严格的区分指令和数据。强类型的则严格的在编译期进行检查。

类型转换:

虽然JavaScript是弱类型语言,但还是要用到类型转换。

parseInt()转换成整数

parseFloat()转换成小数

在前面已经可以看到,字符串与数字相加,得出的是在字符串的相加

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i='999';
    var l=1.5;
    alert(i+l);
    i=parseInt(i);
    alert(i+l);
</script>

可见在JavaScript中字符串和数字类型相加,得出的结果是字符串的组合,点确定

这是转换成变量i成数字之后,数字和数字之间相加,得出的结果是数字的和。

JavaScript中的运算符表达式

数学运算符:

+

数字求和,或字符串的组合

-

求差

*

乘积

/

除号需要注意的是,如果除一个不能整除得数,在JavaScript中会得出准确的小数,但是在其他强类型语言中,不能够整除的整数得出的还是整数,因为强类型语言中整数除以整数得出的还是整数。多余的小数就去掉了。

%

取余数

补充:有些小数运算会出问题,如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=1.1;
    var l=56;
    alert(i*l);
</script>

得出的结果明显有问题,与浮点数有关,可以尝试在小数运算中扩大10000倍在除以10000来解决问题。

逻辑运算符:

&&

与,并,两者都要是真true

||

或,二者有一个是真true就可以

非,否

比运算符:

==

等于,===是恒等于,=是赋值

!=,<>

不等于

>

大于

<

小于

>=

大于等于

<=

小于等于

三元运算符:

a==b?"A等于B":"A不等于B";

举例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=1;
    var l=10;
    var c=i>=l?"ok":"no";
    alert(c);
</script>

以上是判断变量i是否大于等于变量l,若果是,返回OK,如果不是,返回no,c是判断的返回值。

再来一个输入的判断:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
</body>
</html>
<script>
    var i=prompt("请输入第一个数字");
    var l=prompt("请输入第二个数字");
    var c=i>=l?"第一个数大于等于第二个数":"第一个数不大于第二个数";
    alert(c);
</script>

输入第一个数字12

输入第二个数字10

判断得出第一个数字大于第二个数字。

JavaScript基础之注释,类型,输出,运算符的更多相关文章

  1. JavaScript基础知识:数据类型,运算符,流程控制,语法,函数。

    JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...

  2. 前端知识体系:JavaScript基础-变量和类型

    前端工程师自检清单 1. JavaScript规定了几种语言类型 2. JavaScript对象的底层数据结构是什么 3. Symbol类型在实际开发中的应用.可手动实现一个简单的 Symbo 4. ...

  3. Python基础之注释,算数运算符,变量,输入和格式化输出

    Python的注释 注释的作用:用自己熟悉的语言,对某些代码进行标注说明,增强程序的可读性: 在python解释器解释代码的过程中,凡是#右边的,解释器都直接跳过这一行: 注释的分类 单行注释 # 这 ...

  4. JavaScript基础(语法类型转换、运算符、语句)

    1.类型转换: 分为自动转换和强制转换,一般用强制转换. 其他类型转换为整数:parseint(): 其他类型转换为小数:parsefloat(): 判断是否是一个合法的数字类型:isNaN(): 是 ...

  5. javascript基础篇--function类型(上)

    在js中,function类型实际上是对象,每一个函数都是function类型的一个实例.并且与其它引用类型一样具有属性和方法. 声明 1普通方式 Function sum(num1,num2) { ...

  6. 你真的懂JavaScript基础类型吗

    夯实Javascript基础. 基本类型有六种: null,undefined,boolean,number,string,symbol. 基本类型的值是保存在栈内存中的简单数据段 基础类型特性 基础 ...

  7. JavaScript基础语法资料

    JavaScript基础第01天 1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的 ...

  8. JavaScript中判断对象类型方法大全1

    我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...

  9. JavaScript中判断对象类型的种种方法

    我们知道,JavaScript中检测对象类型的运算符有:typeof.instanceof,还有对象的constructor属性: 1) typeof 运算符 typeof 是一元运算符,返回结果是一 ...

随机推荐

  1. Json对象和Json字符串之间的转换

    json字符串转json对象,调用parse方法: var b='{"name":"2323","sex":"afasdf&quo ...

  2. Python 基础 一

    Python 基础  一 一.关于Python的介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum),这一两年在国内很流行,应用很广泛. 二.Python的基础知识(1) 1 ...

  3. win10用命令net启动服务没权限解决办法

    法一.右击cmd命令图标,以管理员身份运行即可. 或者 法二.打开cmd命令的位置->右击属性->高级->勾上"以管理员身份运行"->确定.

  4. iOS开发 - Swift实现清除缓存功能

    前言: 开发移动应用时,请求网络资源是再常见不过的功能.如果每次都去请求,不但浪费时间,用户体验也会变差,所以移动应用都会做离线缓存处理,其中已图片缓存最为常见. 但是时间长了,离线缓存会占用大量的手 ...

  5. .Net程序员学用Oracle系列(23):视图理论、物化视图

    1.视图理论 1.1.视图的存储 1.2.视图的作用 1.3.视图的工作机制 1.4.视图的依赖性 1.5.可更新的连接视图 1.6.内联视图 2.物化视图 2.1.刷新物化视图 2.2.物化视图日志 ...

  6. zen coding一个牛的不行的html和css开发工具

    zen coding 是一种仿css选择器的语法来快速开发html和css的开源项目.现已更名为Emmet.可以到github上下载拜读.在这个都想偷懒的世界里,此方法可以极大的缩短开发人员的开发时间 ...

  7. hdu1054 Strategic Game 树形DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1054 思路:树形DP,用二分匹配也能解决 定义dp[root][1],表示以root 为根结点的子树且 ...

  8. [刷题]算法竞赛入门经典(第2版) 6-1/UVa673 6-2/UVa712 6-3/UVa536

    这三题比较简单,只放代码了. 题目:6-1 UVa673 - Parentheses Balance //UVa673 - Parentheses Balance //Accepted 0.000s ...

  9. 受够了if (ModelState.IsValid)?ActionFitlter也是一路的坑啊!

    这篇博客真是干货,干得估计还有点“磕牙”,所以还提供视频和代码.但基础稍弱的同学,怕还是得自行补充一些基础知识——就一篇文章,确实没办法面面俱到. 视频和代码下载:Demo - 百度云盘 · 一起帮 ...

  10. Spring+SpringMVC+MyBatis深入学习及搭建(三)——MyBatis全局配置文件解析

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/6874672.html 前面有写到Spring+SpringMVC+MyBatis深入学习及搭建(二)——My ...