javaScript第一天(1)

01-JavaScript基础

核心知识点

  1. javaScript书写位置
  2. javaScript变量
  3. javaScript数据类型
  4. javaScript数据类型转换
  5. javaScript运算符

今日学习目标

  1. 能够定义一个变量并完成变量的赋值
  2. 能够说出每一种具体的数据类型
  3. 能够数据类型之间的相互转化
  4. 能够掌握各种运算符的作用

序言

JavaScript发展历史(js)

1. 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版,这是世界上第一款比较成熟的网络浏览器,轰动一时。但是这是一款名副其实的浏览器--只能浏览页面,浏览器无法与用户互动,当时解决这个问题有两个办		法,一个是采用现有的语言,许它们直接嵌入网页。另一个是发明一种全新的语言。2. 1995年Sun公司将Oak语言改名为Java,正式向市场推出。Sun公司大肆宣传,许诺这种语言可以"一次编写,到处运	 行"(Write Once, Run Anywhere),它看上去很可能成为未来的主宰。3. 网景公司动了心,决定与Sun公司结成联盟4. 34岁的系统程序员Brendan Eich登场了。19954月,网景公司录用了他,他只用10天时间就把Javascript设计出来了。  (多肽语言)5. (1)借鉴C语言的基本语法; (2)借鉴Java语言的数据类型和内存管理; (3)借鉴Scheme语言,将函数提升到"第一等公民"(first class)的地位; (4)借鉴Self语言,使用基于原型(prototype)的继承机制。

在这里插入图片描述

JavaScript是什么?

JavaScript: 基于对象和事件驱动,运行在浏览器客户端的脚本语言。[js]✔ js的运行环境: 运行在浏览器端的一种语言✔ 最后将所有的js代码都要以对象的形式去执行,都要通过事件的方式去触发执行【DOM】对象: 现实世界中的对象:  将任何一个具体的事物都是一个对象【万事万物皆对象】编程中的对象: 对现实中对象的抽象描述面向对象特征:  封装   继承   多态编程思想:✔面向对象:【推荐】代码执行都要以一个具体的对象为整体去执行✔面向过程:代码执行的时候,一行一行执行的。

JavaScript能干什么?

  ☞ 常见的网页效果【表单验证,轮播图。。。】☞ 与H5配合实现游戏【水果忍者: http://www.jq22.com/demo/html5-fruit-ninja/】☞ 实现应用级别的程序【 http://naotu.baidu.com】☞ 实现统计效果【http://echarts.baidu.com/examples/】☞ 地理定位等功能【http://lbsyun.baidu.com/jsdemo.htm#i4_5】☞ 在线学编程【https://codecombat.163.com/play/】☞ js可以实现人工智能  【面部识别】☞ 可以实现服务端功能  nodejs

JavaScript组成

ECMASCRIPT    定义了javascript的语法规范,描述了语言的基本语法和数据类型☞ BOM (Browser Object Model) 即浏览器对象模型。浏览器对象模型,一套操作浏览器功能的API,通过BOM可以操作浏览器窗口,比如:弹出框、控制浏览器跳转、获取分辨率等☞ DOM (Document Object Model) 文档对象模型,一套操作页面元素的API,DOM可以把HTML看做是文档树,通过	      DOM提供的API可以对树上的节点进行操作 【js+HTMl+css】

JavaScript书写位置

内嵌式写法

 ☞  在html页面内部设置<script type="text/javascript">js</script>注意:该标签可以放到head标签中或者body标签中

外联式写法[推荐写法]

1. 新建js文件2. 通过script标签引用到当前页面中<script type="text/javascript" src="test.js"></script>注意:1. 不能将代码写到外联式标签中。2. 一个网页中可以同时调用多个外部js文件<script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script><script type="text/javascript" src="test.js"></script>

行内式写法(不推荐)

☞  将js代码写到标签内部
<div onclick="js代码"></div>注意:onclick 是一个点击事件: 当点击div的时候,会触发该事件,执行该事件中的代码

JavaScript中输入消息方式


alert();document.write('<h1>我是一段文字</h1>');   在网页中输出信息prompt("请输入姓名","测试");   //接收用户输入的confirm("确定不听课么");console.log("adsadsfafds");	 //在控制台中输出消息总结:1. 在js中如果希望输出一个具体的文本信息,必须带引号2. 在使用document.write();的时候,可以在方法内输出html标签,加引号。

变量(重点)

变量概念

 ☞ 变量:  变量指的是在程序中保存数据的一个容器

定义变量及赋值

 ☞ 定义变量var  变量名;☞ 赋值变量名 =;☞ 总结:1. 一个变量一次只能保存一个值2. 最后一次的赋值结果3. 变量是区分大小写(js区分大小写)

变量命名规范

☞ 规则    必须遵守的,不遵守的话 JS引擎 发现并报错 1. 由字母(A-Za-z)、数字(0-9)、下划线(_)、美元符号( $ )组成,如:var usrAge, num01, _name2. 区分大小写 强调:JS 严格区分大小写 ,var app;var App; 是两个变量3. 不能 以数字开头,或者汉字定义变量名4. 不能 是关键字、保留字 和 代码符号,例如:varforwhile&, class5. 不能出现空格☞ 规范  建议遵守的,不遵守的话 JS引擎 也不会报错1. 变量名必须有意义2. 遵守驼峰命名法。首字母小写,后面单词的首字母需要大写。

在这里插入图片描述
在这里插入图片描述

课堂测试

1.下面四个变量声明语句中,哪一个变量的命名是正确的?Avar for               Bvar txt_name               Cvar myname myval      Dvar 2s2.下面哪一个语句定义了一个名为 Myval 的变量并将它的值赋为2205Avar myval=2205         Bvar MyVal = 2205Cvar Myval=2205         D.Myval=2205 【不规范】3. 气温表示方式有两种:摄氏度和华氏度华氏度=9/5*摄氏度+32请使用代码完成:让用户输入任意的摄氏度,得到对应的华氏度。4. 交换两个变量的值var a = 1;var b = 2;最后通过程序的方式将变量a的值改为 2,变量b的值改为15. 定义两个变量,求和

数据类型(重点)

数据类型

 ☞ 数据类型:  数据类型指的是变量的数据类型

简单数据类型

  • 数字类型(number)
☞ 凡是数字都属于该类型【整数,小数,负数】☞ 只要变量的值是一个具体的数字,那么当前变量的数据类型就是数值类型☞ number类型表示的数字大小:
最大值是±1.7976931348623157乘以10308次方    Number.MAX_VALUE
最小值是±5 乘以10-324次方				     Number.MIN_VALUE
  • 字符串类型(string)
☞ 字符串可以是引号中的任意文本。可以使用单引号或双引号☞ 在js中一般写字符串类型的变量时候,推荐使用单引号。☞ 注意:1. 单引号和双引号之间的嵌套例如: 输出    我是"高帅富"程序猿;  2. 转义字符\n 换行\\  斜杠\'  单引号\"  双引号\r  回车符例如:var strMsg = 'I'm the GOD of my world ~!';   //输出:I'm the GOD of my world ~!var strMsg2 = "I"m the GOD of my world ~!";  //输出:I"m the GOD of my world ~!var strMsg3 = '反斜杠是这个 \\,神奇!';  //输出:反斜杠是这个 \,神奇!
  • 布尔类型(boolean)
truefalse 
  • undefined类型(了解)
		//如果一个变量没有赋值,该变量的默认是undefinedvar n1;//如果一个变量的值是undefined,那么该变量的数据类型就是undefined类型

复杂数据类型(目前不讲)

  • object类型

课堂测试

请说出如下变量分别对应的数据类型是什么?var  a1=123;    var a2="123";    var a3=true;  var a4="false";   var a5="1.63";var  a6; 		var a8="null"

数据类型判断

 ☞ 使用  typeof 变量  可以得到对应变量的数据类型☞ 例如:var n1 = 123;//获取n1的数据类型console.log(typeof n1);var n2 = '123';console.log(typeof n2);var n3 = true;console.log(typeof n3);

判断一个变量是不是数字

isNaN(x) 方法例如:var usrAge = 21;var isOk = isNaN(usrAge);console.log(isNum); // false ,21 不是一个 非数值var usrName = "James";console.log(isNaN(usrName));//true ,"James"是一个 非数值

数据类型转换

  • 转数值类型
 ☞Number(变量):总结:1. 可以通过该方法将数据类型转换为数值类型var n1 = '123';console.log(typeof n1);//方法一:通过Number()n1 = Number(n1);console.log(typeof n1);2. 在转换的过程中可以将原来的值保留,遇到小数直接保留下来,不会舍去3. 如果变量无法转换为数值类型,那么返回的结果是NaN; 对应的数据类型依然是数值类4. 如果将布尔类型转换为数值类型,true 转化后的结果是 1  false 转化后的结果是0☞parseInt(变量)var num1 = parseInt("12.3abc");   // 返回12,如果第一个字符是数字会解析知道遇到非数字结束var num2 = parseInt("abc123");   // 返回NaN,如果第一个字符不是数字或者符号就返回NaN备注:1  只会保留整数部分,通过该方式进行数据类型转换后得到就是一个整数2. 如果一个变量中的值无法转换为具体数字,那么返回的结果是一个 NaN 的值3. NaN (not  a  number)   ----NaN对应的数据类型是数值类型4. 通过该方法可以将其他数据类型转为数值类型☞parseFloat(变量)总结:1. 通过该方法可以将其他数据类型转换为数值类型2. 在转换过程中,如果遇到小数,那么会直接将小数部分保留3. 如果转化不成功过,返回的结果NaNparseFloat()把字符串转换成浮点数
  • 转字符串类型
 ☞  变量.toString()var num = 5;console.log(num.toString());String(变量)备注:String()函数存在的意义:有些值没有toString(),这个时候可以使用String()。比如:undefined和null
  • 转布尔类型
Boolean() 备注:0  |''(空字符串) | null | undefined | NaN  会转换成false  其它都会转换成 true

算数运算符

 + 运算总结:1. 如果是数值类型的变量相加,结果就是一个数值类型的结果2. 如果是一个字符串类型的变量相加,最后的结果就是字符串(加号起到的作用就是拼接字符串的功能)-运算总结:1. 如果是数值类型的变量相减,结果就是一个数值类型的结果2. 如果是数字的字符串相减,得到的结果也是一个数值类型结果(发生了隐式类型转化)var n1 = '123';var n2 = '123';3. 如果是非数字的字符串相减,得到的结果是NaN*运算/运算1.如果是数值类型的变量相除,结果就是一个数值类型的结果2. 如果是数字的字符串相除,得到的结果也是一个数值类型结果(发生了隐式类型转化)3. 如果是非数字的字符串相除,得到的结果是NaN4. 如果除数是0 ,得到的结果是 Infinity (无穷大的值)%取余(获取余数)  

赋值运算符

 += |  -=   |  *=  |  /=  |   %= var  a += b ;    =====> 等价于        a = a+b;

一元运算符

  • 前置++ 和 后置 ++

  • 前置-- 和 后置–

比较运算符

1.   >  2.   <3.   >=     大于 或者 等于,只要有一个满足即可4.   <=     小于 或者 等于,只要满足一个即可5.  ==      只用来比较变量中的值是否相等,不考虑数据类型6.  ===     用来判断值和数据类型必须同时相等7.  !=	    判断值是否不相等,不考虑数据类型8.  !==      判断值和数据类型☞ 总结:✔ 通过比较运算符得到的结果只有两个结果,一个是正确的,一个是错误的✔ 通过比较运算符得到的结果 只有 true[正确]false[错误]

逻辑运算符

 1.   ||  或: 条件只要有一个满足即可总结:1. 如果条件中有一个结为true(代表有一个条件满足了),那么通过或运算后最后的结果为true2. 如果条件中结果都不满足,那么通过或运算后结果为false2.   &&  且: 要求所有的条件都必须满足才可以总结:1. 如果条件都为真(true),那么通过且运算后最后的结果也是真(true2. 如果条件中自少有一个条件不满足(false),那么通过且运算后的结果为false3.   !	  非(取反) : 

运算符优先级(了解)

优先级从高到底1. ()  优先级最高2. 一元运算符  ++   --   !3. 算数运算符  先*  /  %+   -4. 关系运算符  >   >=   <   <=5. 相等运算符   ==   !=    ===    !==6. 逻辑运算符 先 &&||7. 赋值运算符

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/248302.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

javaScript第二天(1)

02-JavaScript基础 1.核心知识点 运算符分支语句 【重点】断点调试 [查看程序逻辑的一个技能] 2.今日学习目标 能够掌握js中相关的运算符 能够掌握理解算数运算符使用及特点能够掌握赋值运算符的使用及特点能够掌握一元运算符的使用及特点能够掌握比较运算符的特点,理解等于…

第四周总结

第四周作业 这次作业属于哪个课程C语言程序设计这个作业要求在哪里第四周作业我的课程目标全部学会这个作业在那个具体方面帮助我实现目标深入了解二维数组参考文献教科书一&#xff0c;基础作业 程序填空题5-1 输入一个正整数 n (1≤n≤10)和n 阶方阵a的元素&#xff0c;如果方…

2019春季学期第四周作业

2019春季学期第四周作业 这个作业属于那个课程C语言程序设计Ⅰ这次作业要求在哪里2019春季学期第四周作业我在这个课程的目标是我希望能够更加掌握循环和排序参考文献无选择法排序 本题要求将给定的n个整数从大到小排序后输出。输入格式&#xff1a; 输入第一行给出一个不超过1…

javaScript第二天(2)

02JavaScript基础随堂笔记 01.运算符[☆] 知识点-算数运算符 作用就是进行 加, 减, 乘, 除 , 取余运算的 算数运算符的重点是通过算数运算和可以实现类型转换 加号可以实现数据类型转换: 一个数字和一个空字串相加最后的结果就是字符串减号也可以实现数据类型转换乘法符号也可…

MFC中的基本知识

转载于:https://www.cnblogs.com/o8le/archive/2012/05/21/2512178.html

Python中字符串操作函数string.split('str1')和string.join(ls)

Python中的字符串操作函数split 和 join能够实现字符串和列表之间的简单转换&#xff0c; 使用 .split()可以将字符串中特定部分以多个字符的形式&#xff0c;存储成列表 1 def split(self, *args, **kwargs): # real signature unknown2 """3 …

javaScript第三天(1)

03-JavaScript基础 1.核心知识点 分支语句 【重点】断点调试 [查看程序逻辑的一个技能]循环语句[重点 ☆☆☆] 2.今日学习目标 能够掌握条件判断分支语句能够掌握switch分支语句能够掌握三元表达式分支语句能够掌握循环语句 条件判断&#xff08;分支&#xff09; 语法 //…

javascript第三天(2)

03JavaScript基础课堂笔记 01-分支语句 知识点-多条件判断分支语句 语法 if(条件) {代码1 }else if(条件) {代码2 }else if(条件) {代码3 }else {代码4 }执行过程 1. 代码自上而下执行 2. 程序先判断第一个条件是否成立 true 还是 false 3. 如何第一个条件的结果是 true,那么就…

VI编辑器常用命令

vi —终端中的编辑器 vi 简介 打开和新建文件 三种工作模式 常用命令 分屏命令 01. vi 简介 1.1 学习 vi 的目的 在工作中&#xff0c;要对 服务器 上的文件进行 简单 的修改&#xff0c;可以使用 ssh 远程登录到服务器上&#xff0c;并且使用 vi 进行快速的编辑即可 常见…

20175213 2018-2019-2 《Java程序设计》第4周学习总结

## 教材学习内容总结 在第四周的学习过程中&#xff0c;我学习了第五章的内容。 第五章内容总结&#xff1a; 1.子类继承的方法只能操作子类继承和隐藏的成员变量。 2.子类和父类在同一包的继承性 子类自然继承了其父类中不是private的成员作为自己的成员。 3.子类和父类不在同…

伪静态回发

&#xff08;1&#xff09;自定义一个Actionlessform类&#xff0c;在aspx中不再使用系统提供的form 标记 创建此类并对其进行编译之后&#xff0c;要在 ASP.NET Web 应用程序中使用它&#xff0c;应首先将其添加到 Web 应用程序的 References 文件夹中。然后&#xff0c;要 使…

Supercomputer 解题报告

Supercomputer 设\(f_i\)为前\(i\)个时间内必须的完成的任务个数&#xff0c;那么答案就是\[ \max_{i}\lceil\frac{f_i}{i}\rceil \] 现在要支持区间加和全局\(\max\) 考虑分块&#xff0c;对每个块维护一个\(tag\)表示加标记 块内的\(\max\)则为\[ \max_i \frac{1}{i}\times t…

Reversing-x64Elf-100

一道很简单的小题 作为python小白这道题主要是学习了一点python知识...... 可以看出来 sub_4006FD 这个函数是用来判断输入密码是否正确的 我们看一下它的伪代码&#xff1a; signed __int64 __fastcall sub_4006FD(__int64 a1) {signed int i; // [rsp14h] [rbp-24h]const ch…

javaScript第六天(2)

07-javaScript基础 ☞ 函数其他部分 arguments [掌握] arguments 作用? 解决当函数的形参个数不确定的时候,通过arguments获取实参的值如何使用arguments 获取用户传递实参的值? arguments 在函数中就是用来保存实参信息的伪数组 (可以按照数组的方式去遍历, 但是不能使用数…

论wpf的设备无关性 - 简书

论wpf的设备无关性 - 简书 原文:论wpf的设备无关性 - 简书 WPF从发布之日起&#xff0c;一直将“分辨率无关(resolution independence)”作为其亮点&#xff0c;声称使用WPF制作的用户界面在轻巧的Ultra-Mobile PC的屏幕上和在50英寸的电视机上都能很好地显示。微软之所以称WPF…

浅谈Aho-Corasick automaton(AC自动机)

Aho-Corasick automaton是什么&#xff1f; 要学会AC自动机&#xff0c;我们必须知道什么是Trie&#xff0c;也就是字典树。Trie树&#xff0c;又称单词查找树或键树&#xff0c;是一种树形结构&#xff0c;是一种哈希树的变种。典型应用是用于统计和排序大量的字符串&#xff…

javaScript第七天(2)

javaScript基础 ☞ 对象其他部分 [理解] 自定义构造函数创建对象[掌握] //继续简化 自定义构造函数 function People(uName, uAge) {this.uName uName;this.uAge uAge; } // 如何通过自定义构造函数创建对象? var zs new People(张三, 20); console.log(zs);注意事项: 自定…

js(Dom+Bom)第一天(1)

JavaScript-DOM&#xff08;BOM&#xff09;操作 核心知识 获取页面元素事件设置样式 学习目标 能够使用id名,标签名等方式获取页面中元素能够给标签注册点击事件,并实现对应效果能够给标签通过js方式设置样式 JavaScript组成 ECMASCRIPT (基础语法) DOM&#xff08;文档对…

[HZNOI #koishi] Magic

[HZNOI #514] Magic 题意 给定一个 \(n\) 个点 \(m\) 条边的有向图, 每个点有两个权值 \(a_i\) 和 \(b_i\), 可以以 \(b_i\) 的花费把第 \(i\) 个点的 \(a_i\) 变成 \(0\). 最后每个点 \(i\) 产生的花费为所有从 \(i\) 出发能通过一条有向边直接到达的点 \(j\) 的 \(a_j\) 的 \…

js(Dom+Bom)第一天(2)

webAPI 00-复习 内置对象中的方法 01-JavaScript组成 知识点-ECMASCRIPT 重点回顾 存储容器 变量数组对象 逻辑语法 分支语句循环语句switch语句 知识点-BOM 概念 Browser Object Model (浏览器器对象模型) 操作浏览器将浏览器看做是一个对象.作用 通过js操作浏览器中相…