前端-JavaScript2-1——JavaScript基础复习及上次作业答案
昨天讲解的JS是编程最最简单的一些基础知识,复习一下:
JavaScript书写环境,<script>标签
1 <script type=”text/javascript”> 2 </script> |
alert()函数,至于什么是函数,先别管。alert弹出警告框
1 alert("你好"); |
控制台F12,console就是用来检测程序有没有错误的
1 console.log("你好"); |
我们已经知道了两种常见错误,
SyntaxError 语法错误 :比如符号是中文的
ReferenceError 引用错误 : 比如变量没有声明
数字的直接量:数字、NaN、Infinity
数字这个东西,有很多进制。
下面的值都是15:
1 15 2 017 3 0o17 4 0O17 5 0xf 6 0Xf |
下面的值都是0.04
1 0.04 2 4e-2 3 0.4e-1 4 .4e-1 |
6/0 结果是Infinity , 0/0结果是NaN
字符串的直接量:双引号、单引号
1 "字符串" 2 "45454" 3 "" |
变量: 变量的命名开头必须是字母、美元符号、下划线,后续的可以有字母、美元符号、下划线、数字;换句话说,不能以数字开头。不能有怪异符号,不能是保留字和关键字。
变量的定义,或者叫做变量的声明,用var
1 var a = 100; |
var一次之后,就可以不用var了。
用逗号隔开多个:
1 var a = 100 , b = 200; |
JS中变量声明可以提升,也就是说,可以先使用变量,然后再声明
1 a = 100; 2 var a; |
一个变量如果仅仅var了,但是没有赋值,默认的值是
1 undefiend |
变量的类型,实际上就是所有值的类型
基本的类型5种:
number类型 : 数字、NaN、Infinity
string类型 : 字符串
undefined类型 : 只有一个值,就是undefined
null类型 : 只有一个值,就是null
boolean类型 : 只有两个值true和false
引用类型:
我们日后再说
用typeof能够检测值的类型。
parseInt、parseFloat
parseInt是无条件的截断小数点后面的任何东西,不四舍五入。
1 parseInt(3.9888); // 3 2 parseInt("3年3月"); //3 3 parseInt("哈哈3年3月"); //NaN |
parseInt可以将任何一个进制的数字转为10进制,要记住数字不能直接用字面量,要加字符串
1 parseInt("0xf",16); //15 2 parseInt(0xf,16); //21 |
parseFloat就是获取小数点的,将string变为浮点数
1 parseFloat("3.14.123") //3.14 |
parseFloat没有进制,就不能写逗号。
数学运算符
+ - * / %
% 叫做求余,也有的书上求模
1 100 % 10 //0 2 15 % 5 //0 |
1 3454325435 % 3 |
的计算结果只能是0、1、2。 不能是3、4、5、6……
运算顺序是先选乘性(*/%)的,然后是加性(+-)的。
1 2 + 5634 * 5 % 5 / 2 |
解:原式 = 2 + 28170 % 5 / 2
= 2 + 0 / 2
= 2
作业
1)计算下列算式,并将结果输出:
1 console.log((123 + 45 * 78) / (34 + 543) - 9 * (324 - 34)); |
2)表示气温有两种方法:摄氏度和华氏度。两者的关系是:
编写程序,让用户输入摄氏度,弹出对应的华氏温度。
1 <script type="text/javascript"> 2 //第一步,让用户输入数字 3 var sheshidu = parseFloat(prompt("请输入摄氏温度")); 4 //第二步,计算 5 var huashidu = 9 / 5 * sheshidu + 32; 6 //第三部,显示 7 alert("你好,华氏度是" + huashidu + "\n给钱!"); 8 </script> |
3) 用JS计算下列算式,并将结果在弹出:
这道题目就是用来练习嵌套的,
1 Math.pow((23 + Math.pow(5,7))/45,2); |
4) 编写程序,提示用户输入六边形的边长,然后弹出它的面积,计算六边形面积的公式是:
2 <script type="text/javascript"> 1 //第一步,让用户输入边长 2 var a = parseFloat(prompt("请输入六边形的边长")); 3 //第二步,计算 4 var s = 3 * Math.sqrt(3) / 2 * Math.pow(a,2); 5 //第三步,显示 6 alert("面积是" + s); 7 </script> |
5)
如果今天是星期二,那么1000天后是星期几?用户输入一个天数,计算这个天数后是星期几。
如果今天是星期2,那么7天后是也是星期2,14天后也是星期2。
今天1天后是星期3,那么8天后也是星期3,15天后也是星期3。
所以49天后,是星期2。因为49 % 7 结果是0
所以79天后,是星期4。 因为79 % 7 结果是2,相当于2天后
所以,1000天后的星期就要看简化为相当于几天后?
1000 % 7 结果是6, 所以就相当于6天后的星期。
6天后就是星期1。
综合算式就是: (2 +
1000 % 7) % 7
如果用户输入天数,那么就是
1 |
6)
用户输入一个三位数,弹出各个数位的和。
比如:
用户输入155,就弹出11
用户输入316,就弹出10
用户输入989,就弹出26
用户输入678,就弹出21
这里就有一个“算法”的概念,“算法”就是人想出来的让机器解决事情的方法。
前不久有一个机器alphaGo能打败李世乭,实际上就是算法为王,算法非常好。
机器能干的事情就是计算、流程控制。
用户输入数字简单,但是拆分数字需要我们的智慧了。
比如用户输入316,如何单独得到各个数位???
个位简单, 就是 316 % 10 得到6
百位也简单,就是parseInt(316
/ 100) 得到3
十位比较复杂,
parseInt(316 / 10) % 10 得到1
前端-JavaScript2-1——JavaScript基础复习及上次作业答案的更多相关文章
- C#基础第七天-作业答案-利用面向对象的思想去实现名片-动态添加
class Card { private string name; public string Name { get { return name; } set { name = value; } } ...
- C#基础第五天-作业答案-用DataTable制作名片集
.DataTable 实现 DataTable PersonCard = new DataTable(); //创建一个DataTable DataTable PersonCardCopy = new ...
- C#基础第四天-作业答案-Hashtable-list<KeyValuePair>泛型实现名片
.Hashtable 实现 Hashtable table = new Hashtable(); while (true) { Console.WriteLine("------------ ...
- C#基础第三天-作业答案-集合-冒泡排序-模拟名片
.冒泡排序 Console.WriteLine("对集合里的数进行排序,请输入第一个数:"); int a = int.Parse(Console.ReadLine()); Con ...
- 前端学习 之 JavaScript基础
一. JavaScript简介 1. JavaScript的历史背景介绍 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版.这是历史上第一个比较成熟的网络浏览器,轰动一时 ...
- 前端开发之JavaScript基础篇一
主要内容: 1.JavaScript介绍 2.JavaScript的引入方法和输出及注释 3.javaScript变量和命名规则 4.五种基本数据类型 5.运算符 6.字符串处理 7.数据类型转换 ...
- web前端篇:JavaScript基础篇(易懂小白上手快)-2
目录 一.内容回顾: ECMAScript基础语法 1.基本数据类型和引用数据类型 2.条件判断和循环 3.赋值运算符,逻辑运算符 4.字符串的常用方法 5.数组的常用方法 6.对象 7.函数 8.日 ...
- web前端篇:JavaScript基础篇(易懂小白上手快)-1
目录 详细内容: 0.JavaScript的引入 1.第一个JavaScript 2.变量 3.变量的类型 4.数组 5.条件语句 6.三元运算符 7.循环 8.函数 9.对象(object): 10 ...
- 【前端】之JavaScript基础知识
JS 基础知识 JS中,简单类型的数据存储在栈中,复杂类型的数据存储在堆中,其引用存储在栈中 JS中的深拷贝和浅拷贝: 浅拷贝:将对象中的所有简单类型的属性拷贝出来,引用类型属性直接赋值null 深拷 ...
随机推荐
- more语法
二.more 文件内容或输出查看工具 more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比: [root@localhost ~]# ...
- sql注入2
一.查询数据库的版本号 http://10.1.2.5:10631/sqli/Less-2/?id=-1 union select 1,2,version() 二.查询数据库中所有的库名 http:/ ...
- Python 多线程的程序不结束多进程的程序不结束的区别
import time from threading import Thread from multiprocessing import Process #守护进程:主进程代码执行运行结束,守护进程随 ...
- python基础---面向对象的概念
1.面向对象 什么是面向过程?? 将一个复杂单位问题一步步小化,最终只需要完成一个人小的功能就可以了 比如:将大象放进冰箱要几步? 一共三步:打开冰箱,把大象塞进入,关门就可以了 优点:复杂度降低了, ...
- WEB学习笔记4-前端代码基本命名规法和格式规范
1.HTML命名规范及格式规范 标签名和属性应该都小写,虽然HTML代码不区分大小写:属性值应该用双引号闭合. <IMG src=demo.jpg alt='test'/>(N) < ...
- css内外边距属性
盒子模型: 所有HTML元素可以看作盒子,在CSS中,"box model"是用来设计和布局时 使用. CSS盒模型本质上是一个盒子, 封装周围的HTML元素, 它包括:边距,边框 ...
- 学习java的阶段性理解(其它语言也一样)
打算从今天开始学java啊,待会滚去找资料了.现在谈一下学习java阶段性的理解.由于现在对java真的啥也不知道啊,不过还是要瞎鸡儿写点自己的看法,以下看法应该也使适用于其它语言: 第一阶段,入门级 ...
- conts、var 、let的区别
1.const定义的变量不可以直接修改,通过 this.a = 'kkk' 进行修改, 而且必须初始化. 2.var定义的变量可以修改,如果不初始化会输出undefined 3.let是块级作用域,函 ...
- xlistview长按
//XListView的长摁事件 xlistview.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @O ...
- 统计数字(关联容器map)
题目描述 某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109).已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统 ...