跟我学《JavaScript高程3》 第二讲,课程笔记

跟我学《JavaScript高程3》

第二讲:第3章

课程制作:bling,兴哥,5年Java,3年前端
课程知识:JavaScript、Html、Css
课程目标:前端体系课程,逐步深入,找到一份前端工作
课程大纲:本书目录结构
适合人群:前端初学者,可以0基础,但要认真,踏实

课程回顾

1、静态项目基本结构:html、css、js、images
2、文件的方式引入一个JavaScript脚本文件:引入方式、引入路径
3、变量编写Hello,world:变量的定义,使用变量。

补充:变量在讲解函数后,会提到全局变量和局部变量。

课程笔记

1、JavaScript中的数据类型

分类:

    数据类型:5种简单数据类型,1中复杂数据类型

    typeof:

        用于判断变量是哪种类型,如果需要判断变量为何种类型,直接使用typeof关键词,空格接着写上变量就可以了。
        比如,前几天群里面的一个问题,如何判断数组,也是使用typeof。

    undefined:

        如果我们定义了一个变量,但是没有给变量赋值,这个时候,变量就是undefined。
        如果我们没有定义一个变量,而是直接去使用,那么会报错。提示 not defined。
        如果JavaScript文件中有程序报错,那么程序会停止执行。

    null:

        null是表示一个空值,但是要注意,我们定一个变量为null的时候。
        如果使用typeof操作符判断类型的时候,返回的是object,因为指向的是一个空的对象。

        null一般用于给变量初始化使用。在进行逻辑运算的时候,与undefined是相等的。     

    number:

        number类型用于表示数字,整数和浮点数。

        NaN:正数除以0的时候返回infinity,负数除以0返回-infinity。只有0除以0的时候返回NaN。任何非数字类型的值去做除法运算,都会返回NaN。
        编程中判断NaN的时候,采用isNaN(xxx)去判断。
        字符串类型转换数字有两个常用的函数,parseInt()和parseFloat(),这两个函数都比较“智能”,因此在使用的时候需要留意。
        toFixed(2)用于保留有效位数,参数是保留的位数。在JavaScript中,保留位数的时候,注意四舍五入的规则,和我们学习的数学不太一样。
        只适用于要舍去的位数值是5的情况,判断前面一位数,如果小于5,不进位,如果大于等于5,则进位。

    boolean:

        boolean的值只有true和false两种。在与数字对比的时候,只有1等于true,0等于false。
        但是,在做逻辑判断的时候,是另外一种情况。非空的值都是true,空值null也是flase。
        我们在给字符串或者其他类型转换为boolean值的时候,使用的是Boolean()函数。
        注意:转换的时候,只会关心这个变量有没有值,不会关心变量的内容。整形的变量0和1是特例。

    string:

        字符串可以使用单引号或者双引号包裹,但是不能一边使用单引号另外一边使用双引号。
        JavaScript中字符串是不允许修改,如果做字符串操作,会重新分配空间。
        字符串有个length属性,用于判断长度。转义符的长度为1。

    Object:

        创建Object对象的时候,建议使用new关键词。Object对象是JavaScript中所有对象的基类,任何对象都会自动拥有Object对象的方法。

知识点:

    数据类型是任何一门编程语言的基础,一定要好好理解。
    JavaScript中所有的变量都是使用var关键词定义。
    这几种数据类型都有一个特点,都可以衍生出数组类型,数组是将同一类型数据,多条,赋值给一个变量,用中括号包裹。
    数组变量的类型的如果使用typeof操作符,也会返回object。
    比如:数字类型数组,字符串数组,等等。

2、操作符

分类: 

    一元操作符 : ++ -- += =+ -= =- 。。。。。

        需要注意,++和--的时候,放在变量的前面,是先给变量的值做++或者--的运算。如果放在后面,是先做其他运算,再给变量自身进行++或者--的操作。
        ++和--的步进值是1。
        += 操作符对变量没有任何改变,=+会改变变量,加上被设置的值。其他-=、=-、*=、=*。。。。。类似。

    布尔操作符 : && || !

        && : 只有两边都是true的时候,才为true。有一个为false的时候,就为false
        || : 有个为true就为true
        !  : 如果给true取反,就是false。相反如果给false取反,就是true。

        注意:做逻辑运算的时候,需要注意逻辑运算的顺序,为保证正常执行,可以使用()

    关系运算符:== > < >= <= ===

        用于两个变量之间的比较,返回true和false,前面5中会对变量进行默认类型转换。
        第6种是绝对等于,不会进行数据转换。一般用于对数据有严格要求的地方。

    条件操作符:xxx?xxx:xxx;

        也叫三元操作符,第一个表达式一般是关系操作符。
        如果值为真(true),那么执行第二个,如果为假(false),那么执行第三个。

    逗号表达式:,,,,

        逗号表达值永远执行最后一个。了解。           

知识点:

    操作符运算需要注意优先级,我这边总结了一句话,可以方便理解。算关逻条赋逗。

3、语句

分类:

    if-else:

        用于一次判断,if中的判断条件是逻辑运算,如果最终结果为true,那么执行if后面{}包裹的程序,如果为false,那么执行else后面{}包裹的程序。
        else不是必须的。

    do-while:

        可以用于多次循环遍历,先执行do中的逻辑运算,如果为true,则执行while后面()包裹的判断,如果为false,则跳出循环。
        注意和while的区别。

    while:

        用于多次循环遍历,自身拥有判断条件,如果为真则一直执行,如果有一次为false,那么会跳出循环。

    for:

        用于多次循环遍历,拥有一个三元操作符。循环的次数由后面的两个表达式控制。经常与++和--搭配使用。

    for-in:

        一般用于遍历对象的属性使用,可以方便的获取到对象的属性名称和属性值,在工作中做工具类的时候使用较多。

    label:

        代码段加标签,一般与循环中的break和continue搭配使用。不常用。

    break,continue:

        和循环搭配使用,进行逻辑的控制。break是跳出循环,continue是继续执行循环,不执行后面代码。

    with:

        简化同一个对象的频繁编写,可以使用,但是不常用。因为不便于代码的阅读理解。

    switch-case:

        功能类似if-else,但是可以方便组织代码结构。注意使用的时候,别忘了要搭配一个break。有时候还会有一个default。

知识点:

    语句是用于控制程序的逻辑结构,数据的处理,语句也是任何一门编程语言的基础,在任何语言中基本是类似的。一定要好好掌握。
    工作中经常使用的有if-else,for,for-in,while,swith,break-continue。
    其中break-continue,一般是用于循环遍历中的控制。

4、函数

概念:使用function关键词定义,可以随机定义参数,函数的参数叫做形参。

作用:函数用于包裹一个功能,比如对某种数据的处理,日期格式的转换,数据的校验等等。

知识点:函数是一次编写,多处调用。有一种神奇的函数,叫做匿名函数,在工作中使用的频率也会很高。
函数也是非常重要的功能,在工作经常使用,一定要好好学习,函数有很多玩法,后续的课程中会陆续提到。

课后作业

1、理解数据类型、操作符、语句、函数的概念,弄清楚各自在什么时候使用。

2、编写一个加、减、乘、除运算的四个函数,函数中需要弹出计算机结果是正数还是负数的提示框。
时间: 2024-10-15 04:17:23

跟我学《JavaScript高程3》 第二讲,课程笔记的相关文章

javaScript高程第三版读书笔记

看完dom编程艺术现在准备读进阶版的js高程了 第一章 aa ss 第二章 aa ss

(1/18)重学Standford_iOS7开发_iOS概述_课程笔记

写在前面:上次学习课程对iOS还是一知半解,由于缺乏实践,看公开课的视频有时不能很好地领会知识.带着问题去学习永远是最好的方法,接触一段时间iOS开发以后再来看斯坦福iOS公开课,又会有许多新的发现,对于已有的概念有了新的认识.这次课程笔记主要用作归纳知识点,整理学习思路,与大家讨论课后习题,交流等. 第一课:iOS概述 1.iOS分层:①Core OS:核心操作系统层,基于UNIX内核(套接字,文件系统,电源管理,钥匙串,Bonjour等).API多为C函数,实际应用使用较少. ②Core S

斯坦福大学深度学习与自然语言处理第二讲

第二讲:简单的词向量表示:word2vec, Glove(Simple Word Vector representations: word2vec, GloVe) 转载请注明出处及保留链接“我爱自然语言处理”:http://www.52nlp.cn 本文链接地址:斯坦福大学深度学习与自然语言处理第二讲:词向量 推荐阅读材料: Paper1:[Distributed Representations of Words and Phrases and their Compositionality]]

跟我学《JavaScript高程3》第一讲,课程笔记

跟我学<JavaScript高程3> 第一讲:第1~3章 课程制作:bling,兴哥,5年Java,3年前端 课程知识:JavaScript.Html.Css 课程目标:前端体系课程,逐步深入,找到一份前端工作    课程大纲:本书目录结构 适合人群:前端初学者,可以0基础,但要认真,踏实 回答几个问题 1.为什么要学习前端?JavaScript有哪些用处?为什么要讲这本书? 移动互联网是未来的趋势,移动设备H5开发带动了前端趋势,今后App基本都是Native+H5实现. 页面效果,数据交互

跟我学《JavaScript高程3》视频教程,下载地址

课程终于开讲了,录制课程其实是一件虽然辛苦但是有意思的事情,希望能够和大家一起分享,一起学习,共同进步. 本文章不定期更新,用于存放整套课程下载地址. 1.跟我学<JavaScript高程3>第一讲:第1~3章 百度云: 下载地址:http://pan.baidu.com/s/1qY9tNty 下载密码:fuuj

跟我学《JavaScript高程3》第三讲,课程笔记

跟我学<JavaScript高程3> 第三讲:第4章 课程制作:bling,兴哥,5年Java,3年前端 课程知识:JavaScript.Html.Css 课程目标:前端体系课程,逐步深入,找到一份前端工作    课程大纲:本书目录结构 适合人群:前端初学者,可以0基础,但要认真,踏实 课程回顾 1.数据类型:5种基本类型,1中复杂类型. 2.操作符:需要注意运算优先级,算关逻条赋逗. 3.语句:if-else.for.for-in.while 4.函数:函数定义,目前的两种方法 补充:变量在

怎么学JavaScript?

作者:小不了链接:https://zhuanlan.zhihu.com/p/23265155来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 鉴于时不时,有同学私信问我(老姚,下同)怎么学前端的问题.这里统一回复一下,如下次再遇到问我此问题同学,就直接把本文链接地址发给你了. 首先说句题外话.关于有人管我叫大神的事情.个人感觉这跟你买东西时,人家管你叫帅哥一样,你答应与否都无妨. 正题开始,"前端怎么学"应该因人而异,别人的方法未必适合自己.就说说我的学习

16位汇编第六讲汇编指令详解第二讲

16位汇编第六讲汇编指令详解第二讲 1.比较指令 CMP指令 1.CMP指令是将目的操作数减去源操作数,按照定义相应的设置状态标志 2.CMP指令执行的功能与SUB指令(相减指令)一样,但是不同的是CMP指令之根据结果设置标志位 而不修改值 可以操作的指令格式 CMP reg,imm/reg/mem CMP mem,imm/reg 上面是CMP指令的语法,具体的也可以查询帮助文档,inter手册 inter手册查的办法 第一个框代表了CMP指令的所有语法 比如 reg,reg 表示可以比较寄存器

十天学Linux内核之第二天---进程

原文:十天学Linux内核之第二天---进程 都说这个主题不错,连我自己都觉得有点过大了,不过我想我还是得坚持下去,努力在有限的时间里学习到Linux内核的奥秘,也希望大家多指点,让我更有进步.今天讲的全是进程,这点在大二的时候就困惑了我,结果那个时候我就止步不前了,这里主要讲的是为何引入进程.进程在Linux空间是如何实现的,并且描述了所有与进程执行相关的数据结构,最后还会讲到异常和中断等异步执行流程,它们是如何和Linux内核进行交互的,下面我就来具体介绍一下进程的奥妙. 首先我们要明确一个