更新时间:2018-09-17 14:27:32 本文将以树莓派开发板为例进行介绍 Link Develop 设备接入,开始前请确保完成了测试设备创建。 前期准备 硬件 树莓派开发板+KY-016 RGB LED 小灯模块 软件 在树莓派刷入 NOBOS 固件:https://www.raspberrypi.org/downloads/noobs/ 在树莓派上安装 Node.js (版本要求>=8
DOM 与 JavaScript 是分离的。 DOM 有自己的一套标准,JavaScript 也有自己的一套标准。 JavaScript 是对标准的实现,为一种语言,而 DOM 标准定义了一系列的接口,由此可以看出,他们两者是可以毫不相干的。 但是在 Web 开发中,页面内容的展示全部通过浏览器解析展现,JavaScript 想动态的修改页面,就必须由浏览器提供一些方法,交给开发者来操作页面上的元
逻辑运算符通常用于布尔型(逻辑)值。这种情况下,它们返回一个布尔值。然而,&& 和 || 运算符会返回一个指定操作数的值,因此,这些运算符也用于非布尔值。这时,它们也就会返回一个非布尔型值。—— MDN 逻辑运算符用于逻辑运算。如变量 num 要大于2同时也要小于 7,这里的同时就是一种逻辑运算。 JavaScript 中的逻辑运算有三种: && 与 (并且) || 或 (或者) ! 非 (取反)
比较运算符用于比较两个表达式的结果。如变量 num 加上变量 offset 是否大于0,大于就是一个比较运算符。 比较运算符还分为相等运算符与关系运算符。 相等运算符: == 相等 != 不相等 === 严格相等 !== 严格不相等 关系运算符: > 大于 >= 大于等于 < 小于 <= 小于等于 运算符返回的都是布尔值。 运算符左右的值也被称为操作数。 1. 相等运算符 相等运算符用于判断运算符
算术运算符以数值(字面量或变量)作为其操作数,并返回一个单个数值。标准算术运算符是加法(+),减法( - ),乘法(*)和除法(/)。—— MDN 算数运算符是用来做算数运算的,如 + 这个符号,就是用来做加法操作。 1. N元运算 N 代表一个数,如一元运算,二元运算。 N元运算 表示由N个值产生一个新的值的规则。 如 * 就是一个二元运算符,他由两个数相乘产生第三个数。 JavaScript
字典是一种以键-值对应形式存储的数据结构,就像电话薄里的名字和电话号码一样。只要找一个电话,查找名字,名字找到后,电话号码也就找到了。这里的键值是你用来查找的东西,值就是要查的到的结果。 javascript的Object类就是以这种字典的形式设计的。本章利用Object类本身的特性,实现一个Dictionary类,让这种类型的对象使用起来更简单。你也可以使用数组和对象来实现本章展示的方法。但是定
队列是一种列表,不同的是队列只能在末尾插入元素,在队首删除元素。队列用于存储按顺序排列的数据。先进先出。这点和栈不一样,在栈中,最后入栈的元素反被优先处理。可以将队列想象成银行排队办理业务的人,排队在第一个的人先办理业务,其它人只能排着,直到轮到他们为止。 队列是一种先进先出(FIFO)的数据结构。队列被用在很多地方。比如提交操作系统执行一系列进程。打印任务池等。一些仿真系统用来模拟银行或杂货店里
在日常生活中,人们经常使用列表:待办事项列表,购物清单,十佳榜单,最后十名榜单等。计算机也在使用列表,尤其是列表中元素保存的是太多时。当不需要一个很长的序列中查找元素,或对其进行排序时,列表显得尤为有用。反之,如果数据结构非常复杂,列表的作用就没有那么大了。 本章展示了如果创建一个简单的列表类,我们首先给列表给出抽象的数据类型定义,然后描述如何实现抽象数据类型(ADT),最后,分析几个列表适合解决
数组是编程世界里最常见的数据结构。任何一种编程语言都包含数组,只是形式稍微有差异。数组是编程语言中的内建类型,通常效率都很高。可以满足不同需求的数据存储,本章将探索javascript中的数组工作原理,以及它们的使用场合。 一:javascript中对数组的定义 数组的标准定义是:一个存储元素的线性集合(collection),元素可以通过索引来任意存储,索引通常是数字,用于计算元素之间存储位置的
函数是这样一段代码,它只定义一次,但可能被执行或调用任意次。你可能从诸如子例程(subroutine)或者过程(procedure)这些名字里对函数概念有所了解。 javascript函数是参数化的:函数定义会包括一个形参(parmeter)标识符列表。这些参数在函数中像局部变量一样工作。函数会调用会给形参提供实参的值。函数使用它们实参的值计算返回值,成为该函数的调用表达式的值。 除了实参之外,么
数组是值的有序结合。每个值叫做一个元素,而每个元素在数组中都有一个位置,用数字表示,称为索引。 javascript数组是无类型的:数组的元素可以是任意类型,并且同一个数组中的不同元素也可能有不同的类型。数组的元素可能是对象或其他数组,这允许创建更加复杂的数据结构,如对象的数组和数组的数组。 javascript数组的索引是基本零的32位数值:第一个元素的索引为0,最大的索引为4 294 967
对象是javascript的基本数据类型。对象是一种复合值。它将很多值(原始值 或者其他对象)聚合在一起。可通过名字访问这些值。对象也可以看做是属性的无序集合,每个属性都有一个名/值。属性名是字符串,因此我们可以把对象看成是从字符串到值的映射。这种基本数据结构还有很多叫法,有些我们已经非常熟悉,比如“散列”(hash)、“散列表”(hashtable)、“字典”(dictionary)、“关联数组
在javascript中,表达式是短语,那么语句(statement)就是整句或命令。正如英文语句以句号结尾,javascript以分号结尾。 表达式计算出一个值,但语句使某件事发生。 “使某件事发生”的一个方法是计算带有副作用的表达式。诸如赋值和函数调用这些有副作用的表达式,是可以作为单独的语句的。这种把表达式当做语句的用法也称做表达式语句(expression statement)。类似的语句
在 Rails 中使用 JavaScript 本文介绍 Rails 内建对 Ajax 和 JavaScript 等的支持,使用这些功能可以轻易的开发强大的 Ajax 程序。 读完本文,你将学到: Ajax 基本知识; 非侵入式 JavaScript; 如何使用 Rails 内建的帮助方法; 如何在服务器端处理 Ajax; Turbolinks 简介; 1 Ajax 简介 在理解 Ajax 之前,要
HTML用来组织网页的内容,CSS用来定义网页的外观,而JavaScript(简称JS)的设计本意是想给网页加入一些交互动效。 尽管如同我们在CSS3进阶章节中讲述到的,CSS也开始提供一些交互和动画特性,比如伪类:hover,就是一种描述用户鼠标悬停在元素上的交互状态。 但是这些特性远不能满足开发者对文档的动态处理需求,比如动态创建、删除、更新元素乃至页面片段(DOM),更不用说操作浏览器(BO