任务目的

  • 学习与实践JavaScript的基本语法、语言特性
  • 练习使用JavaScript实现简单的排序算法

任务描述

  • 基于上一任务
  • 限制输入的数字在10-100
  • 队列元素数量最多限制为60个,当超过60个时,添加元素时alert出提示
  • 队列展现方式变化如图,直接用高度表示数字大小
  • 实现一个简单的排序功能,如冒泡排序(不限制具体算法),用可视化的方法表达出来,参考见下方参考资料

任务注意事项

  • 实现简单功能的同时,请仔细学习JavaScript基本语法、事件、DOM相关的知识
  • 请注意代码风格的整齐、优雅
  • 代码中含有必要的注释
  • 示例图仅为参考,不需要完全一致
  • 具体算法及可视化的形式不做特别限制,只要求能够展现出算法的过程
  • 建议不使用任何第三方库、框架

在线学习参考资料

基础JavaScript练习(二)总结

1、JavaScript parseInt() Function

parseInt()函数解析一个字符串并且返回一个整数。

基数参数被用于指定使用哪一个数字系统,例如基数为16表示字符串中的数字从十六进制数解析为十进制数。

如果省略了基数参数,JavaScript将假设成下述情况:

  • •如果字符串以“0x”开头,基数参数为16(十六进制)。
  • •如果字符串以其他开头,基数参数为10(十进制)。

注意:只有字符串中的第一个数字被返回。允许使用前导和尾随空格。

语法:

parseInt(string, radix)

string:将被解析的字符串。

Radix:可选,从2到36的数字,表示使用的数字系统。

返回值:数字。当第一个字符不能被转换为数字,返回NaN。

2、HTML DOM childNodes Property

childNodes属性返回一个节点的子节点集合,作为一个节点列表对象。在代码中节点集合已经被排序,并且可以通过下标访问,下标从0开始。这个属性为只读属性。

可使用节点列表对象的length属性来确定子节点的个数,然后可以循环所有的子节点并从中提取信息。

注意:元素当中的空白被认为时文本,文本也被认为是节点。注释同样被认为是节点。

childNodes属性与children属性区别:

children属性返回一个节点元素节点的集合,不包含文本和注释节点,childNodes属性包含。

语法:

element.childNodes

返回值:节点列表对象,代表节点的集合。在源代码中返回集合中的节点已被排序。

3、HTML DOM Style Object

Style对象代表一个独立的style语句。

访问一个Style对象

Style对象可以通过document的头部访问,也可以通过特定的HTML元素访问。

eg:var x = document.getElementsByTagName("STYLE");

var x = document.getElementById("myH1").style;

创建Style对象

可以使用document.createElement()方法创建一个<style>元素,也可以通过设置一个已经存在元素的style属性。

var x = document.createElement("STYLE");

document.getElementById("myH1").style.color = "red";

4、已提交作业

代码地址:https://github.com/Nunawading2016/2017-IFE-Baidu/blob/master/task2-1

Demo地址:http://htmlpreview.github.io/?https://github.com/Nunawading2016/2017-IFE-Baidu/blob/master/task2-1/index.html

基础JavaScript练习(二)总结的更多相关文章

  1. Javascript基础回顾 之(二) 作用域

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  2. 零基础JavaScript编码(二)

    任务目的 在上一任务基础上继续JavaScript的体验 学习JavaScript中的if判断语法,for循环语法 学习JavaScript中的数组对象 学习如何读取.处理数据,并动态创建.修改DOM ...

  3. 学习javascript数据结构(二)——链表

    前言 人生总是直向前行走,从不留下什么. 原文地址:学习javascript数据结构(二)--链表 博主博客地址:Damonare的个人博客 正文 链表简介 上一篇博客-学习javascript数据结 ...

  4. Bootstrap <基础三十二>模态框(Modal)插件

    模态框(Modal)是覆盖在父窗体上的子窗体.通常,目的是显示来自一个单独的源的内容,可以在不离开父窗体的情况下有一些互动.子窗体可提供信息.交互等. 如果您想要单独引用该插件的功能,那么您需要引用  ...

  5. 从头开始学JavaScript (十二)——Array类型

    原文:从头开始学JavaScript (十二)--Array类型 一.数组的创建 注:ECMAscript数组的每一项都可以保存任何类型的数据 1.1Array构造函数 var colors = ne ...

  6. js基础提高(二)

    JavaScript基础提高(二) 上篇写的是JavaScript的历史.基本的数据类型和基本的语法进填的话讲的就深入一些了. js的函数 1.js函数定义的方式 (1)普通方式 语法:functio ...

  7. js基础--javaScript数据类型你都弄明白了吗?绝对干货

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...

  8. Vue基础系列(二)——Vue中的methods属性

      写在前面的话: 文章是个人学习过程中的总结,为方便以后回头在学习. 文章中会参考官方文档和其他的一些文章,示例均为亲自编写和实践,若有写的不对的地方欢迎大家指出. 作者简介: 一个不知名的前端开发 ...

  9. 一篇文章图文并茂地带你轻松学完 JavaScript 设计模式(二)

    JavaScript 设计模式(二) 本篇文章是 JavaScript 设计模式的第二篇文章,如果没有看过我上篇文章的读者,可以先看完 上篇文章 后再看这篇文章,当然两篇文章并没有过多的依赖性. 5. ...

随机推荐

  1. rest framework-序列化-长期维护

    ###############   表结构    ############### from django.db import models class Book(models.Model): titl ...

  2. Tript协议|伯尔尼公约|著作权|立法宗旨|自动保护|著作权集体管理|

    知识产权 国际条约: Tript协议是国际性公约,<与贸易有关的知识产权协定>(英文:Agreement on Trade-Related Aspects of Intellectual ...

  3. AttributeError: 'bytes' object has no attribute 'hex'

    python3.5之前bytes数据没有hex()属性 需要使用 ''.join(map(lambda x:('' if len(hex(x))>=4 else '/x0')+hex(x)[2: ...

  4. django框架进阶-form组件-长期维护

    ##################     form组件做了什么事情?      ####################### 之前web开发的模式,以注册为例 1,要有一个注册页面,然后有一个f ...

  5. python3下scrapy爬虫(第七卷:编辑器内执行scrapy)

    之前我们都是在终端切入到scrapy的路境内执行爬虫的,你要多敲多少行的字节,所以这次我们谈谈如何在编辑器里执行,这个你可以用在爬虫中,当你使用PYTHONWEB开发时尽量不要在编辑器内启动端口服务那 ...

  6. 【转】Mac下显示User下的资源Library

    在Mac OS 中Library文件夹是默认不显示的,这对普通用户来说是有好处的,可以防止用户误操作删除Library文件夹,但对于iOS的开发者来说是非常麻烦的,特别是ArcGIS Runtime ...

  7. 吴裕雄--天生自然python学习笔记:WEB数据抓取与分析

    Web 数据抓取技术具有非常巨大的应用需求及价值, 用 Python 在网页上收集数据,不仅抓取数据的操作简单, 而且其数据分析功能也十分强大. 通过 Python 的时lib 组件中的 urlpar ...

  8. C# SerialPort 读写三菱FX系列PLC

    1:串口初始化 com = , Parity.Even, , StopBits.One); 2:打开关闭串口 if (com.IsOpen) { com.Close();//关闭 } com.Open ...

  9. python两个队列实现一个栈和两个栈实现一个队列

    1.两个栈实现一个队列 两个栈stack1和stack2, push的时候直接push进stack1,pop时需要判断stack1和stack2中的情况.如果stack2不为空的话,直接从stack2 ...

  10. eclipse 大括号改为C语言一样的代码块

    如图:找到Windows->Preferences->Java->Code Style->Formatter: 然后,点击右边的Edit按钮: 按如下图完成