读书笔记《数据结构与算法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描述
本书看完,对常见的数据结构与算法从概念上有了更深入的理解. 书中关于数组.栈和队列.链表.字典.散列.集合.二叉树.图.排序.检索.动态规划.贪心算法都有详细的介绍.算是一本不错的学习书籍. 栈和队列 ...
- 【读书笔记】《编程珠玑》第一章之位向量&位图
此书的叙述模式是借由一个具体问题来引出的一系列算法,数据结构等等方面的技巧性策略.共分三篇,基础,性能,应用.每篇涵盖数章,章内案例都非常切实棘手,解说也生动有趣. 自个呢也是头一次接触编程技巧类的书 ...
随机推荐
- .Net Core微服务入门全纪录(七)——IdentityServer4-授权认证
前言 上一篇[.Net Core微服务入门全纪录(六)--EventBus-事件总线]中使用CAP完成了一个简单的Eventbus,实现了服务之间的解耦和异步调用,并且做到数据的最终一致性.这一篇将使 ...
- P2034 选择数字——线性dp(单调队列优化)
选择数字 题目描述 给定一行 \(n\) 个非负整数 \(a[1]...a[n]\) .现在你可以选择其中若干个数,但不能有超过 \(k\) 个连续的数字被选择.你的任务是使得选出的数字的和最大. 输 ...
- POJ1852 Ants 题解
题目 An army of ants walk on a horizontal pole of length l cm, each with a constant speed of 1 cm/s. W ...
- P2882 Face The Right Way G 题解
题目 Farmer John has arranged his N \((1 ≤ N ≤ 5,000)\) cows in a row and many of them are facing forw ...
- Vue中computed的本质及与methods的区别
一.computed的本质? computed为什么不像methods一样加小括号使用? 正常使用computed方式 运行结果 至于为什么computed为什么不像methods一样使用小括号调用, ...
- 记一次使用elasticsearch遇到bug的探索过程
背景: 练习一个小项目,爬取京东的数据,存到ES库中,然后读取ES库中数据,展示到页面上.效果图如下: 涉及两个接口,一个爬取写入ES接口,一个查询展示接口,当我写完代码信心满满准备看看效果的时候,调 ...
- scrapy (三) : 请求传参
scrapy 请求传参 1.定义数据结构item.py文件 ''' field: item.py ''' # -*- coding: utf-8 -*- # Define here the model ...
- scala 数据结构(五):队列 Queue
1 队列 Queue-基本介绍 队列的说明 1)队列是一个有序列表,在底层可以用数组或是链表来实现. 2)其输入和输出要遵循先入先出的原则.即:先存入队列的数据,要先取出.后存入的要后取出 3)在Sc ...
- redis(十六):Redis 安装,部署(LINUX环境下)
第一步:下载安装包 访问https://redis.io/download 到官网进行下载.这里下载最新的4.0版本. 第二步:安装 1.通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压 ...
- 数据可视化之powerBI基础(十四)Power BI中创建联动切片器
https://zhuanlan.zhihu.com/p/67564062 进行数据分析时,每个分析维度并不总是独立的,比如省份是一个维度,城市也是一个维度,而这两个维度之间是有逻辑关系的,那么在进行 ...