读书笔记《数据结构与算法JavaScript描述》第一章
第一章JavaScript的编程环境和模型
1.2JavaScript编程实践
1.2.1 声明和初始化变量
JavaScript中的变量默认为全局变量,如果初始化未被声明的变量,该变量就成了一个全局变量。
javascript中使用关键字var声明初始化变量。 var 变量名; var 变量名=初始化值;
例如:
var name;
var number=10;
var text="Hellow World";
var bool=false;
1.2.2 Javascript中的算是运算符和数学库函数
JavaScrip算是运算符:(可用括号改变运算顺序)
+ 加
- 减
* 乘
/ 除
% 取余
JavaScript同有一个数学库,提供了一些方法来实现某些运算:
console.log(Math.abs(-3)); //取绝对值
console.log(Math.round(2.345)); // 四舍五入
console.log(Math.ceil(2.345)); // 向上舍入
console.log(Math.floor(2.345)); //向下舍入
console.log(Math.max(4,5)); //取最大值
console.log(Math.min(4,5)); //取最小值
console.log(Math.sqrt(9)); //取平方根
console.log(Math.random()); //0-1之间的随机数
console.log(Math.pow(2,3)); //2的3次幂

1.2.3 判断结构
判断结构根据布尔表达式的值进行判断,选择执行那些语句。
(1) if语句(三种形式)
if if(条件){ 语句 }
if-else if(条件){ 语句 }else{ 语句 }
if-else if if(条件){ 执行语句 }else if( 条件 ){ 语句 }
if
var number=15;
if(number>10){
number-=10;
}
if-else
var number=15;
if(num>10){
number-=10;
}else{
number+=10;
}
if-else if
var number=15;
if(num>10){
number-=10;
}else if(num>0){
number+=10;
}
(2)switch语句
switch语句判断的表达式可以为任意类型,无论是整型、字符型等等 都可以。
var number=1;
var week;
switch(number){
case 0:week="星期日"; break;
case 1:week="星期一"; break;
case 2:week="星期二"; break;
case 3:week="星期三"; break;
case 4:week="星期四"; break;
case 5:week="星期五"; break;
case 6:week="星期六"; break;
default: console.log("number");
}
1.2.4 循环结构
while循环
var number=1;
var sum=0;
while(number<=10){
sum+=number;
number++;
}
console.log(sum); //打印55
do{ }while()
var number=1;
var sum=0;
do{
sum+=number;
number++;
}while(number<=10);
console.log(sum); //打印55
for 循环
var number=1;
var sum=0;
for(number;number<=10;number++){
sum+=number;
}
console.log(sum); //打印55
//以上所求皆为1-10的累加和
for循环可以用于遍历
var arr=[1,2,3,4,5,6,7,8,9,10];
var sum=0;
for(var i=0;i<arr.length;i++){
sum+=arr[i];
}
console.log(sum); //打印55
1.2.5 函数
JavaScript两种函数定义方式
有返回值的函数
无返回值的函数 (又名 子程 或 void 函数)
(1)有返回值的函数
function getSum(number){
var sum=0;
for(var i=1;i<=number;i++){
sum+=i;
}
return sum;
}
console.log( getSum(5) ); //打印15
console.log( getSum(10) ); //打印55
(2)无返回值的函数
执行该函数并不是为了得到返回值,而是要 执行这个函数中的语句操作
function change(arr,number){
for(var i=0;i<arr.length;i++){
arr[i]+=number;
}
}
var arr=[4,5,6,7,8,9];
change(arr,10);
console.log(arr); //打印[14,15,16,17,18,19]
--
读书笔记《数据结构与算法JavaScript描述》第一章的更多相关文章
- 数据结构与算法 java描述 第一章 算法及其复杂度
目录 数据结构与算法 java描述 笔记 第一章 算法及其复杂度 算法的定义 算法性能的分析与评价 问题规模.运行时间及时间复杂度 渐进复杂度 大 O 记号 大Ω记号 Θ记号 空间复杂度 算法复杂度及 ...
- 《数据结构与算法JavaScript描述》
<数据结构与算法JavaScript描述> 基本信息 作者: (美)Michael McMillan 译者: 王群锋 杜欢 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:9 ...
- 翻阅《数据结构与算法javascript描述》--数组篇
导读: 这篇文章比较长,介绍了数组常见的操作方法以及一些注意事项,最后还有几道经典的练习题(面试题). 数组的定义: JavaScript 中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性 ...
- 数据结构与算法javascript描述
<数据结构与算法javascript描述>--数组篇 导读: 这篇文章比较长,介绍了数组常见的操作方法以及一些注意事项,最后还有几道经典的练习题(面试题). 数组的定义: JavaScri ...
- 列表的实现-----数据结构与算法JavaScript描述 第三章
实现一个列表 script var booklist = new List(); booklist.append('jsbook'); booklist.append('cssbook'); book ...
- 《数据结构与算法JavaScript描述》中的一处错误
最近在看<数据结构与算法JavaScript描述>这本书,看到选择排序这部分时,发现一个比较大的错误. 原书的选择排序算法是这样的: function selectionSort() { ...
- 数据结构与算法 Javascript描述
数据结构与算法系列主要记录<数据结构与算法 Javascript描述>学习心得
- 读后感:数据结构与算法JavaScript描述
本书看完,对常见的数据结构与算法从概念上有了更深入的理解. 书中关于数组.栈和队列.链表.字典.散列.集合.二叉树.图.排序.检索.动态规划.贪心算法都有详细的介绍.算是一本不错的学习书籍. 栈和队列 ...
- 【读书笔记】《编程珠玑》第一章之位向量&位图
此书的叙述模式是借由一个具体问题来引出的一系列算法,数据结构等等方面的技巧性策略.共分三篇,基础,性能,应用.每篇涵盖数章,章内案例都非常切实棘手,解说也生动有趣. 自个呢也是头一次接触编程技巧类的书 ...
随机推荐
- MSIL入门(一)C#代码与IL代码对比
基础概念 Microsoft中间语言(MSIL),也成为通用中间语言(CIL),是一组与平台无关的指令,由特定于语言的编译器从源代码生成.MSIL是独立于平台的,因此,他可以在任何公共语言基础架构支持 ...
- REST,RPC和GraphQL应用场景,WebHooks、WebSocket、HTTP Streaming应用场景。
一.请求--响应API. 请求--响应类的API的典型做法是,通过基于HTTP的Web服务器暴露一个/套接口.API定义一些端点,客户端发送数据的请求到这些端点,Web服务器处理这些请求,然后返回响应 ...
- Python GIL(全局解释器锁)
理解并发和并行 并行:多个CPU同时执行多个不同的多任务. 就像两个程序(进程),这两个程序是真的在不同的CPU内同时执行多个任务. 并发:CPU切换处理不同的多任务, 还是有两个程序,但只有一个CP ...
- fiddler提示the system proxy was changed,Click to reanable capturing.导致无法抓包
出现这个提示后,fiddler无法抓取请求. 在网上搜了很多方法,比较常见的解决办法如下: 方法1: 网络设置问题,既然是使用本地浏览器,那么只需要把IE浏览器的网络设置下: 面板上点击 Tools- ...
- Report.Net 本地数据库、WebService、Socket报表
本地.服务器的Access.Sql报表编辑.预览.打印. 可自定义预览界面,可方便嵌入到你的程序中去,提供接口函数,如有需要可自行添加接口. 预览采用单双面方式,因为如果页面过多,预览不能全部加载,所 ...
- 安装nodejs,npm,yarn
先安装nodejs和npm sudo apt update sudo apt install nodejs npm #验证一下 nodejs --version npm --version 如果nod ...
- javascript知识梳理之数据类型
javascript基础知识(在javascript中 = 是赋值符号) 变量 合法的变量命名规则:大小写英文.数字. $ 和 _ 的组合,且不能用数字开头. var a; //声明变量 var s ...
- POJ 1063 Flip and Shift 最详细的解题报告
题目来源:Flip and Shift 题目大意:一个椭圆形的环形容器中有黑色和白色两种盘子,问你是否可以将黑色的盘子连续的放在一起.你可以有以下两种操作: 1.顺时针旋转所有的盘子 2.顺时针旋转3 ...
- HotSpot的对象模型(5)
Java对象通过Oop来表示.Oop指的是 Ordinary Object Pointer(普通对象指针).在 Java 创建对象实例的时候创建,用于表示对象的实例信息.也就是说,在 Java 应用程 ...
- bzoj1528[POI2005]sam-Toy Cars*&&bzoj1826[JSOI2010]缓存交换
bzoj1528[POI2005]sam-Toy Cars bzoj1826[JSOI2010]缓存交换 题意: Jasio有n个不同的玩具,它们都被放在了很高的架子上,地板上不会有超过k个玩具.当J ...