昨天讲解的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   
(2 + a % 7) % 7

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基础复习及上次作业答案的更多相关文章

  1. C#基础第七天-作业答案-利用面向对象的思想去实现名片-动态添加

    class Card { private string name; public string Name { get { return name; } set { name = value; } } ...

  2. C#基础第五天-作业答案-用DataTable制作名片集

    .DataTable 实现 DataTable PersonCard = new DataTable(); //创建一个DataTable DataTable PersonCardCopy = new ...

  3. C#基础第四天-作业答案-Hashtable-list<KeyValuePair>泛型实现名片

    .Hashtable 实现 Hashtable table = new Hashtable(); while (true) { Console.WriteLine("------------ ...

  4. C#基础第三天-作业答案-集合-冒泡排序-模拟名片

    .冒泡排序 Console.WriteLine("对集合里的数进行排序,请输入第一个数:"); int a = int.Parse(Console.ReadLine()); Con ...

  5. 前端学习 之 JavaScript基础

    一. JavaScript简介 1. JavaScript的历史背景介绍 1994年,网景公司(Netscape)发布了Navigator浏览器0.9版.这是历史上第一个比较成熟的网络浏览器,轰动一时 ...

  6. 前端开发之JavaScript基础篇一

    主要内容: 1.JavaScript介绍 2.JavaScript的引入方法和输出及注释 3.javaScript变量和命名规则 4.五种基本数据类型 5.运算符 6.字符串处理 7.数据类型转换   ...

  7. web前端篇:JavaScript基础篇(易懂小白上手快)-2

    目录 一.内容回顾: ECMAScript基础语法 1.基本数据类型和引用数据类型 2.条件判断和循环 3.赋值运算符,逻辑运算符 4.字符串的常用方法 5.数组的常用方法 6.对象 7.函数 8.日 ...

  8. web前端篇:JavaScript基础篇(易懂小白上手快)-1

    目录 详细内容: 0.JavaScript的引入 1.第一个JavaScript 2.变量 3.变量的类型 4.数组 5.条件语句 6.三元运算符 7.循环 8.函数 9.对象(object): 10 ...

  9. 【前端】之JavaScript基础知识

    JS 基础知识 JS中,简单类型的数据存储在栈中,复杂类型的数据存储在堆中,其引用存储在栈中 JS中的深拷贝和浅拷贝: 浅拷贝:将对象中的所有简单类型的属性拷贝出来,引用类型属性直接赋值null 深拷 ...

随机推荐

  1. KMP算法详细分解

    1. 引言 给定一个主串(以 S 代替)和模式串(以 P 代替),要求找出 P 在 S 中出现的位置,此即串的模式匹配问题. Knuth-Morris-Pratt 算法(简称 KMP)是解决这一问题的 ...

  2. socket网络编程-----I/O复用之poll函数

    #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/soc ...

  3. C#杀掉进程的方法

    C#杀掉进程的方法 private static string CmdName = "cmd"; /// <summary> /// 关闭进程 /// </sum ...

  4. 关于mybatis配置文件mapper传int值的问题

    1.首先看mapper代码,这是个更新语句. <set> <if test="sendmode!='' && sendmode!=null"> ...

  5. 基于selenium+phantomJS的动态网站全站爬取

    由于需要在公司的内网进行神经网络建模试验(https://www.cnblogs.com/NosenLiu/articles/9463886.html),为了更方便的在内网环境下快速的查阅资料,构建深 ...

  6. Python学习第七课

    Python学习第七课 'Alex' "Alex"print('hello'*5) #重复输出字符串 print('hellowold'[2:]) #类似于切片操作:会取出 llo ...

  7. 关于matlab中画图放大局部细节的问题

    1)需要用得到一个matnify.m文件,下载地址magnify 2)接下来就是如何使用magnify的问题,参见使用 只是在“使用”中的第二步之前首先要用cd进入magnify所在位置.

  8. 百战程序员——EL、JSTL

    1.EL表达式可以操作作用域中的属性,也可以操作普通的局部变量.对吗? 不对 El表达式一般支持作用域(application.session.request.pagecontext)中的属性.EL变 ...

  9. SQLI DUMB SERIES-18

    (1)对username和password无论怎么输入,都没有回显,再看题目,POST - Header Injection - Uagent field - Error based (基于错误的用户 ...

  10. 使用django发布带图片的网页(上)

    如何使用django发布带静态图片的网页呢? 在settings.py里加入下面内容 STATIC_ROOT = os.path.join(os.path.dirname(__file__),'sta ...