JavaScript学习第一篇
在学习之前让我们了解了解JavaScript的由来
Javascript是一种web技术,最初起名叫LiveScript,它是Netscape开发出来一种脚本语言,其目的是为了扩展基本的Html的功能,用来替代复杂的CGI程序来处理web页表单信息,为web页增加动态效果。当Java出现以后.Netscape和Sun公司一起开发了一种新的脚本语言,他的语法和Java非常的类似,所以命名为:Javascript.
在扩展一下ECMA:它是由Microsoft,Netscape(网景公司)和其它脚本语言商决定成立一个国际组织,并将其命名为ECMA,改组织专门从事脚本语言标准的制定,ECMA制定的脚本语言被称为ECMAScript
有人肯定在想JavaScript和ECMA有什么关系?
他们的关系就是所有的javascript都遵循ECMA的标准。就好像html4.0网页头部声明符合W3C规范一样。
一、JavaScript介绍
js是一门在客户端进行交互的网页编程语言
特点:简单易用 ,基于对象:,基于过程:
解释执行: js js引擎来执行源代码
编译执行: Java c# 源代码 ==>可执行文件.dll ==>电脑执行.dll课执行文件
使用范围:表单验证,轮播图特效,游戏开发
二、JavaScript书写位置
内嵌式写法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript">
alert("hello world");
</script>
</head>
<body> </body>
</html>
外链式写法
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script type="text/javascript" src="XXXX.js"></script>
</head>
<body> </body>
</html>
新建一个js文件
通过script标签里的src=”xxxx.js”属性将JS文件调入到当前页面。补充内嵌式写法:推荐Js代码最好放在body结束标签的后边。补充外链式写法:推荐将多个js文件合并为一个js文件在浏览器中执行。
三、Js初体验
在页面中输出消息的几种写法
alert(“信息”) 在页面出现一个弹出框,将信息弹出。 confirm(“信息”) 在页面出现一个弹出框,将信息显示,常与if判断语句结合使用。 prompt(“信息”) 弹出一个文本框,可以在文本框接收内容。常用于接收信息。 console.log(“信息”)将信息输出到控制台,常用于代码调试。 document.write(“信息”) 直接在页面输出消息。
代码注释
快捷键:ctrl+/:单行注释 //、多行注释/* */
分号的问题:一行代码结束后,必须在后边加上分号。
四、变量(重点)
定义变量:定义变量使用var 来定义变量名。使用赋值运算符来给变量赋值
赋值运算符赋值运算符为“=”,这个等号不用判断两者是否相同。如果判断是否相同,可使用==(===)
变量的命名规范:
不能使用纯数字或者数字开头来定义变量名。
不推荐使用汉字来定义变量名。
不能使用特殊符号或者特殊符号开头来定义变量名(_除外)
不能以关键字来定义变量名
不能使用保留字来定义变量名
注意:在JS中,是严格区分大小写的。
五、数据类型
简单类型
number 数字类型
包括正数,负数,小数
取值范围:能表示的最大值是±1.7976931348623157乘以10的308次方,能表示的最小值是±5 乘以10的-324次方
string 字符串
凡是用””或者’’引起来的全是字符串类型。
转义字符:
\” 转双引号
\’ 转单引
\r 回车
\n 换行
boolean 布尔类型:布尔数据类型两个数据值: true false、实际运算中,true 代表1 false代表0;
undefined 未初始化: 定义了变量,未赋值。
null : object(值为空) 引用为空, 内存里找不到这个变量。
复杂类型:object 对象、array 数组
六、运算符
1、比较运算符:< > >= <= !=
2、算术运算符
加运算:+ :两个数据类型都为数字类型变量相加,得到的是数字类型。一个为数字类型的变量和一个为字符串类型的变量相加,得到的是一个字符串类型,加号起一个连接的作用。
减运算:- :如果两个变量都为数字类型相减,得到的是数字类型。如果一个为数字类型的变量,一个为数字字符串,相减得到的是数字类型。如果一个为数字类型的变量,一个为非数字字符串,相减得到的NaN,数字类型。NaN not a number。两个都为字符串的变量相减,得到的是NaN.
除运算 /:两个都为字符串的变量相减,得到的是NaN.两个都为数字类型的变量,相除得到的是数字类型。如果一个为数字类型的变量,一个为数字字符串变量,相除得到的是数字类型。如果一个为数字类型的变量,一个为非数字字符串,相除得到的NaN,数字类型。如果0作为除数,得到的是infinity(无限大),是一个数字类型。
% 取余数:() 优先级 先计算()括号里边的值。
3、逻辑运算符
或(||):参与运算,只要满足一个为true,或运算最后的值为true、参与运算的值都为false,或运算最后的值为false.
且(&&):参与运算,只要满足一个为false,或运算最后的值为false、参与运算,都为true的时候,且运算最后的值为true.
非(!):如果运算结果为true,非运算结果为false、如果运算结果为false,非运算结果为true.
四、等号运算符
“=” 赋值预算符
“==” 比较运算符:只判断内容是否相同,不判断数据类型。
“===” 比较运算符:不仅判断内容是否相同,还判断数据类型是否相同。
“!=” 不等于:只判断内容是否不相同,不判断数据类型。
“!==” 不等于:不仅判断内容是否不相同,还判断数据类型是否相同。
五、代码调试(重点)和三元运算符
代码调试(重点)
先让程序运行一遍
快捷键f12
添加监控变量
1:鼠标放到变量上可以看到值
2:选中变量,右键add to watch
3:点击加号,添加监控变量。
三元运算符
语法 表达式?如果表达式的值为true,执行表达式后边的代码,如果值为false,执行冒号后边的值。
三元运算符可以理解为if..else的另外一种写法。
JavaScript学习第一篇的更多相关文章
- LINQ to XML LINQ学习第一篇
LINQ to XML LINQ学习第一篇 1.LINQ to XML类 以下的代码演示了如何使用LINQ to XML来快速创建一个xml: public static void CreateDoc ...
- 从.Net到Java学习第一篇——开篇
以前我常说,公司用什么技术我就学什么.可是对于java,我曾经一度以为“学java是不可能的,这辈子不可能学java的.”结果,一遇到公司转java,我就不得不跑路了,于是乎,回头一看N家公司交过社保 ...
- Java并发包下锁学习第一篇:介绍及学习安排
Java并发包下锁学习第一篇:介绍及学习安排 在Java并发编程中,实现锁的方式有两种,分别是:可以使用同步锁(synchronized关键字的锁),还有lock接口下的锁.从今天起,凯哥将带领大家一 ...
- JVM学习第一篇思考:一个Java代码是怎么运行起来的-上篇
JVM学习第一篇思考:一个Java代码是怎么运行起来的-上篇 作为一个使用Java语言开发的程序员,我们都知道,要想运行Java程序至少需要安装JRE(安装JDK也没问题).我们也知道我们Java程序 ...
- Golang学习-第一篇 Golang的简单介绍及Windows环境下安装、部署
序言 这是本人博客园第一篇文章,写的不到位之处,希望各位看客们谅解. 本人一直从事.NET的开发工作,最近在学习Golang,所以想着之前学习的过程中都没怎么好好的将学习过程记录下来.深感惋惜! 现在 ...
- javascript学习第一天
从大学第一次接触到JavaScript,到现在一直是个软肋,之前也是学习过一遍,但是缺乏系统学习,基础不牢,那么今天开始从基础部分学起来,今天是第一天,每天至少要保证效率,也要保证学习质量. 恩,要按 ...
- Python学习第一篇
好久没有来博客园了,今天开始写自己学习Python和Hadoop的学习笔记吧.今天写第一篇,Python学习,其他的环境部署都不说了,可以参考其他的博客. 今天根据MachineLearning里面的 ...
- Android基础学习第一篇—Project目录结构
写在前面的话: 1. 最近在自学Android,也是边看书边写一些Demo,由于知识点越来越多,脑子越来越记不清楚,所以打算写成读书笔记,供以后查看,也算是把自己学到所理解的东西写出来,献丑,如有不对 ...
- ImageJ 学习第一篇
ImageJ是世界上最快的纯Java的图像处理程序.它可以过滤一个2048x2048的图像在0.1秒内(*).这是每秒40万像素!ImageJ的扩展通过使用内置的文本编辑器和Java编译器的Image ...
随机推荐
- sort_values()和sort_index()函数
sort_values() 1 可用于对dateframe的多列同时进行排序 True是升序,False是降序,默认是升序 kk.sort_values(by=['listing_id','order ...
- C#—Nhibernate使用教程
本篇文章,让我们一起来探索Nhibernate.首先我们去搜索Nhibernate下载地址,如下链接所示.该版本可能是最新版,我下载的4.0.4.GA.其中GA意思我没搞清楚.不过应该不重要.http ...
- Java 实现Excel的简单读取操作
JAVA实现Excel表单的简单读取操作 实现Excel表单的简单读取操作,首先要导入相关的jar包: 如图所示: 此处贴上代码: public static List<List<Stri ...
- 20190909 SpringBoot集成Swagger
SpringBoot集成Swagger 1. 引入依赖 // SpringBoot compile('org.springframework.boot:spring-boot-starter-web' ...
- [Python3 练习] 006 汉诺塔2 非递归解法
题目:汉诺塔 II 接上一篇 [Python3 练习] 005 汉诺塔1 递归解法 这次不使用递归 不限定层数 (1) 解决方式 利用"二进制" (2) 具体说明 统一起见 我把左 ...
- hdu-4292.food(类dining网络流建图)
Food Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- shutdown的几种方法和利弊
1.shutdown normal 正常方式关闭数据库. 2.shutdown immediate 立即方式关闭数据库. 在SVRMGRL中执行shutdown imme ...
- java 企业网站源码模版 屏幕自适应 有前后台 springmvc SSM 生成静态化引擎
前台: 支持四套模版, 可以在后台切换 系统介绍: 1.网站后台采用主流的 SSM 框架 jsp JSTL,网站后台采用freemaker静态化模版引擎生成html 2.因为是生成的html,所以访问 ...
- sftp没有关闭session导致服务器sshd进程未关闭
项目中需要用Sftp上传下载文件,通过jsch中的sftp实现.代码上了服务器之后,发觉服务器多了很多进程没有被关闭. 连接sftp代码: protected boolean connectToSer ...
- adb 链接网络 connect 安装apk install 断开IP链接 kill-server 连接数devices
https://blog.csdn.net/zhonglunshun/article/details/78362439 ./adb connetc 192.168.1.11 ./adb install ...