建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
092947bevjlmiytnwwd8ky.jpg 云上开发精选优惠 云上优选 特惠来袭
标签
您还可以添加5个标签
  • 没有搜索到和“关键字”相关的标签
  • 云产品
  • 解决方案
  • 技术领域
  • 通用技术
  • 平台功能
取消

7号小助手

发帖: 36粉丝: 149

级别 : 版主

发消息 + 关注

发表于2020年07月13日 10:25:31 8642 417
直达本楼层的链接
楼主
显示全部楼层
[全栈开发者] 【WEB前端全栈成长计划】第二阶段·每周学习笔记征集帖

【WEB前端全栈成长计划】第二阶段·每周学习笔记征集帖


为了巩固大家的学习成果,紧跟学习进度

请将需要完成的每周学习笔记按要求回复到本帖下方

按要求格式回复即可获得积分累计阶段奖品,还能有机会获得附加幸运奖哦~


征集时间

2020.07.13-2020.08.09 23:59

征集要求

在本帖中,回复自己本周课程内容的学习笔记

回复格式:华为云ID+笔记内容,并分享些读书心得(字数≥200字)

示例图如下:

打卡截图.png


奖励方式

每周每篇有效笔记可获得5积分

阶段学习将以积分排行榜的形式,对前300名小伙伴进行奖励哦!

此外还有附加奖励,每周在本周内提交学习笔记的用户中,抽取10位幸运奖

奖励华为云定制鼠标垫

 定制鼠标垫.png


积分排行榜奖品

奖品排行榜.jpg


 活动注意事项

1. 学习任务提交后,小助手会在本阶段学习周期内,按序完成审核,并增加活动积分;

2. 本次活动通过完成提交学习笔记任务,可获得的积分上限为5分/每周;

3. 请务必按照上述要求提交内容,以免影响积分增加;

4. 若积分值相同则以完成学习任务的时间先后排序,其中任务完成时间的判定优先级为:提交前端技术文章>提交每周学习笔记>每章随堂测验打卡;

5. 其他积分获取方式请查看活动社群公告。


想了解更多关于全栈成长计划课程内容请移步主帖:

https://bbs.huaweicloud.com/forum/thread-57007-1-1.html


除了本帖任务,其他学习任务可以通过以下链接进行查看:

查看随堂测验打卡帖:https://bbs.huaweicloud.com/forum/thread-65149-1-1.html

查看前端技术文章征集帖:https://bbs.huaweicloud.com/forum/thread-65150-1-1.html

举报
分享

分享文章到朋友圈

分享文章到微博

dayday

发帖: 0粉丝: 1

级别 : 新手上路

发消息 + 关注

发表于2020年07月13日 12:38:55
直达本楼层的链接
沙发
显示全部楼层
- id: daydaygo --- 第一章数据类型 01-计算机基础导读 02-编程语言 03-计算机基础 04~ JavaScrip初识导读 05-初始 JavaScript 06-浏览器执行JS过程 07-Js三部分组成 08-s三种书写位置 09-JS注释 10-JS输入输出语句 11-变量导读 什么是变量 13-变量的使 变量案例 15-变量案例弹出用户名 16-变量语法扩展 17-变量的命名规范 18-交换2个变量的值 19-变量小结 20-数据类型导读 21-数据类型简介 22-数字型 Number 23-isNaN 24-字符串型 String 25-弹出网页警示框 26-字符串长度以及拼接 27-字符串拼接加强 28-显示年龄案例 29- boolean以及 undefined 30- typeof检测变量数据类型 31-字面量 32-转换为字符串类型 33-转换为数字型 parseInt和 34-转换为数字型Nmbe和 35-计算年龄案例 36-简单加法器案例 37-转换为布尔型 38-拓展阅读之编译和解释 39-拓展阅读之标识符关键
评论
7号小助手 2020-7-14 09:54 评论

您好,您这是copy的课程哈,不算笔记不算积分哈,不好意思~

... 查看全部
dayday 2020-7-15 14:41 评论

评论 7号小助手:打字这么辛苦都不算???

... 查看全部
点赞 评论 引用 举报

冬花

发帖: 3粉丝: 1

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 16:04:35
直达本楼层的链接
板凳
显示全部楼层

华为云id:hw68751377

1、JavaScript三大组成部分:ECMAscript,DOM,BOM

2、三种书写位置:外部文件,内嵌script,行内onclick

3、注释单行注释//,多行注释/**/

4、输入输出:console.log(),prompt(),alert()

5、数据类型:number,string,undefined,Boolean

6、typeof:检测数据类型,本身是给操作符,可以加括号,也可以不加。

7、隐式转换:用加号拼接,不同类型与字符串类型会转换会字符串,用-/*拼接变成number

列子:alert(12+12+’12‘)-》2412

            alert(12+’12‘)-》1212


评论
7号小助手 2020-7-14 09:56 评论

您好 笔记要超过200字 有学习体会哈~您这个不合格哈~重写的话请在新的楼层写!谢谢配合

... 查看全部
点赞 评论 引用 举报

鑫2020

发帖: 0粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 16:28:04
直达本楼层的链接
地板
显示全部楼层
华为云ID: hw29222117 # 第一章笔记 高级语言:JAVA、C/C++、JavaScript、Python 数据存储单位:KB/MB/GB/TB JavaScript产生最初的目的是表单动态校验 JS是一门通过JavaScript引擎(解释器)来执行的脚本语言,解释器会逐行解释JS代码 JavaScript的组成:BOM/DOM/ECMAScript 在JS的三种书写位置:行内式的JS/内嵌式的JS/外部式的JS JS有两种注释方式://单行注释和/***/多行注释 JS的输入输出语句:1、console.log(),2、alert(),3、prompt() 变量是程序在内存中申请的一块用来存放数据的空间 # APPEND 声明变量:var 当创建一个变量时会在内存中的栈区开辟一个新的空间 变量命名规则和规范: ##规则: 1.由字母、数字、下划线、$符号组成,不能以数字开头 2.不能是关键字和保留字,例如:for,while,this,name 3.区分大小写 ##规范: 1.变量名必须有意义 2.遵守驼峰命名法 3.建议不要用$作为变量名 ##什么是强类型定义语言和弱类型定义语言? ###1)、强类型定义语言: 强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。 ###2)、弱类型定义语言: 数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。 强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。 ##JavaScript弱类型的体现 一般规律是,约束越强越不容易出错,但编写程序时也越麻烦。在JavaScript中,因为约束比较弱,所以容易出现这种错误:最简单的例子: ```js var a =100; var b ="1"; var c= a + b;//c=1001 ``` ###心得: 解释型语言是边解释边执行,编译型语言是先翻译再执行
点赞 评论 引用 举报

hwJw19

发帖: 0粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 16:54:54
直达本楼层的链接
5#
显示全部楼层

华为云IDhwJw19

 

Web 第二阶段笔记--第一周

第一章 数据类型

一、初识JavaScript

1.1什么是JavaScript

JavaScript是一种运行在客户端的脚本语言,属于解释型的语言。

1.2 JavaScript三大组成部分:

ECMAScriptDOMBOM

1.3 JS的使用方式:

行内式:

<input type=”button” value=”click me” onclick=”alert(‘hello’)” >

内嵌式:

<script>alert(‘hello’)</script>

js代码放置在script标签里,这一段可以放在head里,也可以放在文档尾部,最好 放在</body>前面。

外部引入式:

<script src=”my.js”></script>

放置位置同内嵌式。

1.4 JS的注释方法

行注释://注释内容

块注释:/*注释内容 */

1.5 输入输出语句

alert();

prompt();

console.log();

二、变量

2.1 什么是变量?

变量是存储数据的容器。

2.2 如何使用变量

变量使用分两步:声明变量+赋值,例如:var age = 19;

var是用来声明变量的关键字,age是变量名,19age的值。

2.3 变量命名规范

由字母、数字、_$符组成;

严格区分大小写;

不能由数字开头;

不能是关键字或保留字;

变量名须有意义;

遵循驼峰命名方法。

三、数据类型

简单数据类型:NumberStringBooleanUndefinedNull

复杂数据类型:Object

3.1 数据类型介绍:

3.1.1  Number 数字型

分为整型、浮点型、Infinity-InfinityNaN

对于NaN,可以使用isNaN()方法来进行判断。

3.1.2  String 字符串

单引号或双引号包含起来的就是字符串类型。

可以使用length属性来获取字符串的长度。

使用+进行字符串拼接。

3.1.23  Boolean 布尔型

truefalse

3.1.4  Undefined 未定义

指没有被赋值的变量。

3.1.5  Null

值就是Null

3.1.6  Object 对象

3.2 方法

3.2.1 typeof:获取变量的数据类型(注意使用的时候可以加括号也可以不加括号)

3.2.2 转换成字符串类型:

toString()String()、使用+拼接进行隐式转换

3.2.3 转换成数字类型:

 parseInt()parseFloat()Number()、使用(- * /)做隐式转换

3.2.4 转换成布尔类型

 Boolean()

 

第二章 运算符

一、运算符

1.算数运算符:用于执行两个变量或值的算数运算,有+(加)、-(减)、*(乘)、/(除)、%(取余)。

2.递增递减运算符

前置:++a  --a

后置:a++  a--

3.比较运算符

<> <=>===!====、!==

4.逻辑运算符

&&||、!

5.赋值运算符

=+=-+*=/=%=

6.运算符优先级

图片.png 

二、流程控制

图片.png 

1、顺序结构

程序按代码的先后顺序,依次执行

2、分支结构

If(){}if(){}else{}if(){}else if(){}else{}switch(){}

3、循环结构

详见下一章

第三章 循环

1for循环

语法结构:for(){...}

2、while循环

语法结构:while(){...}

先判断再执行

3、do while循环

语法结构:do{...}while(){...}

先执行,再判断

4、breakcontinue

break退出循环

continue退出当前循环,进入下一轮循环

 

心得:夯实基础,才能越走越远。


点赞 评论 引用 举报

Zhoubo

发帖: 1粉丝: 1

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 17:25:56
直达本楼层的链接
6#
显示全部楼层

华为云ID:hw84016670


通识基础

    1、计算机基础导读

    2、编程语言

    3、计算机基础

   (略)


第一章 数据类型

1、  JavaScript初识导读

  JavaScript的发展历史

    布兰登艾奇(Brendan Eich,1961年~)

    1995年利用10天完成JavaScript设计

    他在网景公司工作,最初命名为LiveScript,后来在与Sun合作之后将其改名为JavaScript  


  JavaScript是什么

  JavaScript是世界上最流行的语言之一,是一种运行在客户端的脚本语言(Script是脚本的意思)

  脚本语言:不需要编译,运行过程中由js解释器(js引擎)逐行来进行解释并执行

  现在也可以基于Node.js技术进行服务器端编程

  

  <script>

    alert('我是高级编程语言,弹出一个提示框!');

    alert('我是高级编程语言,弹出一个提示框!');

  </script>    

      

  JavaScript的作用

    表单动态校验(密码强度检查)(JS产生最初的目的)

    网页特效

    服务端开发(Node.js)

    桌面程序(Electron)

    APP(Cordova)

    控制硬件-物联网(Ruff)

    游戏开发(cocos2d-js)

  

  JavaScript的原理

  浏览器执行JS

    浏览器分成两部份:渲染引擎和JS引擎

      渲染引擎:解析HTML与CSS,俗称内核,比如chrome浏览器blink,老版本的webkit

      JS引擎:也称为JS解释器。用来读取网页中的JavaScript代码,对其处理后运行,比如chrom浏览器的V8(号称最快的引擎)

  

      浏览器本身并不会执行JS代码,而是通过内置JavaScript引擎(解释器)来执行JS代码。JS引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所有JavaScript语言归为脚本语言,会逐行解释执行

        

  JavaScript由哪三部分组成

    ECMAScript JavaScript语法,是由ECMA国际进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为JavaScript(网景公司)或JScript(微软公司),但实际上后两者是ECMAScript语言的实现和扩展

    DOM (Document Object Model,简称DOM)页面文档对象模型,是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过DOM提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)

    BOM 浏览器对象模型,是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等

    

    ECMAScript:ECMAScript规定了JS的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套JS语法工业标准

  

  JavaScript三种书位置

    行内式 <input type="button" value="唐伯虎" onclieck="alert('秋香姐')">

    内嵌式 <head>

         <script>

            alert('沙漠骆驼')

         </script>

         </head>

    外部式 <script src="my.js"></script>

      

    JavaScript如何注释

      // 内容     单行注释  vscode快捷键 ctrl+/

      /*内容*/   多行注释  vscode快捷键 shit+alt+a 建议修改为 ctrl+shit+/

      

  JavaScript三个输入输出语句   

    为了方便信息的输入输出,JS中提供了一些输入输出语句,其常用语句如下:

    alert(msg) 浏览器弹出警示框

    console.log(msg) 浏览器控制台打印输出信息

    prompt(info) 浏览器弹出输入框,用户可以输入

    

    <script>

    // 输入框

    prompt('请输入您的年龄');

    // alert 弹出警示框

    alert('计算的结果是');

    // consol

    console.log('我是程序员能看到的');

    </script>

    

2、变量导读

  什么是变量

    变量是用于存放数据的容器。

    白话:变量就是一个装东西的盒子。    

    本质:变量是程序在内存中申请的一块用来存放数据的空间

    类似我们酒店的房间,一个房间就可以看做是一个变量

  

  变量的使用

    1)声明变量

      var age; // 声明一个名称为age的变量

      

      var是一个JS关键字,用来声明变量(variable变量的意思)。使用该关键字声明变量后,计算机会自动为变量分配内存空间,不需要程序员管

      age是程序员定义的变量名,我们要通过变量名来访问内存中分配的空间

    

    

    2)赋值     

      var age = 18; // 声明变量同时赋值为18

      console.log(age) // 输出结果

      var myname = 'pink老师'     

      console.log(myname) // 输出结果


      声明一个变量并赋值我们称为变量的初始化(从右边给到左边)



  变量语法扩展

    1)更新变量

      一个变量被重新赋值后,它原有的值就会被覆盖,变量值将以最后一次赋的值为准


      var age = 18;

      age = 81; // 最后的结果就是81,因为18被覆盖掉了


    2)同时声明多个变量

      同时声明多个变量时,只需要写一个var,多个变量名之间使用英文逗号隔开,最后用;号结束


      var age =18,

          address = '火影村',

          gz = 2000;


    3)声明变量特殊情况

      只声明不赋值,变量为undefined状态


      var sex;

      console.log(sex); // 显示undefined


    4)不声明,不赋值,直接使用

      会报错,因为是脚本,错误会阻断程序运行


      // console.log(sexe); // 显示:tel is not defined


    5)不声明,直接赋值

      不声明在js中是允许使用的,不建议这样使用(会变成全局变量)


      qq = 110;

      console.log(qq); // 可以正常输出结果


  变量的命名规范

    由字母(A-Z a-z)、数字(0-9)、下划线(_)、美元符号($)组成,如:usrAge,num01,_name

    严格区分大小写。 var app;和var App;是两个变量

    不能以数字开头。 18age 是错误的

    不能是关键字、保留字。 例如:var、for、while

    变量名必须有意义。 MMD BBD    nl(年龄,不建议的写法) ---  age(建议写法)

    遵守驼峰命名法。 首字母小写,后面单词的首字母需要大写。myF**ame

    推荐翻译网站:有道  爱词霸


    name这个名称建议不要使用  

    // console.log(tel) 浏览器会报错

    // console.log(name) 有些浏览器对name有特殊的定义,不报错,显示空白


  变量小结

    1)为什么需要变量? 

      因为我们有一些数据需要保存,所以需要变量


    2)变量是什么?

      变量就是一个容器,用来存放数据的。方便我们以后使用里面的数据


    3)变量的本质是什么?

      变量是内存里的一块空间,用来存储数据


    4)变量怎么使用的?

      我们使用变量的时候,一定要声明变量,然后赋值      

      声明变量本质是去内存申请空间


    5)什么是变量的初始化?

      声明变量并赋值我们称之为变量的初始化


    6)变量命名规范有哪些?

      变量名尽量要规范,见名如意-驼峰命名法

      区分哪些变量名不合法


    7)交换2个变量值的思路?

      利用临时变量保存数据,通过变量间的赋值,理解交换2个变量的值案例


3、数据类型导读

    数据类型简介,为什么需要数据类型?

      在计算机中,不同的数据所需占用的存储空间是不同的,为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型

      简单来说,数据类型就是数据的类别型号。比如姓名“张三”(字符串型),年龄18(数字型),这些数据的类型是不一样的


    变量的数据类型

      变量是用来存储值的所在处,它们有名字和数据类型。变量的数据类型决定了如何将代表这些值的位存储到计算机的内存中。JavaScript是一种弱类型或者说动态语言。这意味着不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。

 

  数据类型的分类    

    简单数据类型

      Number 数字型,包含整型值和浮点型值,如21、0.21 默认值0

      String 字符串类型,如“张三” 注意咱们js里面,字符串都带引号 默认值 ""

      Boolean 布尔值类型,如true、false,等价于1和0  默认值flase

      Undefined // var a; 声明了变量a但是没有给值,此时a = undefined

      Null  // var a = null; 声明了变量a 为空值

    复杂数据类型(object) 本节不讲  


    1)Number数字型

    <script>

      var num = 10; // 数字型

      var PI =3.14; // 数字型

      var num1 = 010; // 八进制,0~7 数字前面加0表示八进制

      console.log(num1);// 010 八进制 转换为 10进制 就是8

      var num2 = 0x9; // 十六进制,0~9 a~f #ffffff 数字前面加0x表示十六进制

      console.log(num2); // 结果是9

      var num3 = 0xa; 

      console.log(num3);// 结果是10

    </script>


      数字型的范围

        JavaScript中数值的最大和最小值          

        alert(Number.MAX_VALUE);  // 1.7976931348623157e+308

        alert(Number.MIN_VALUE); // 5e-324


      数字型三个特殊值

        alert(Infinity);

        alert(-Infinity);

        alert(NaN);


        Infinity 代表无穷大,大于任何数值

        -Infinity 代表无穷小,小于任何数值

        NaN Not a number,代表一个非数值


        <script>

          alert(Number.MAX_VALUE * 2); // Infinity 无穷大

          alert(-Number.MAX_VALUE *2); // -Infinity 无穷小

          console.log('pink老师' - 100); // NaN

        </script>


      isNaN

        isNaN()用来判断一个变量是否为非数字的类型,这个方法用来判断非数字,并且返回一个值,如果是数字返回false,如果不是数字返回true

        <script>

          consol.log(isNaN(12)); // 返回flase

          consol.log(isNaN('pink老师')); // 返回true        

        </script>


    2)String字符串型

      字符串型可以是引号中的任意文本,其语法为双引号“”和单引号‘’,建议使用单引号‘’(html中我们都使用着双引号“”,js中可以尽量区别一下)


      字符串引号嵌套

        JS可以用单引号嵌套双引号,或者用双引号嵌套单引号(外双内单,外单内双)


        <script>

          var strMsg = '我是“高帅富”程序猿'; // 可以用''包含""

          var strMsg = "我是‘高帅富’程序猿"; // 也可以用“”包含‘’

          // 常见错误

          var badQuotes = 'what on earth?"; // 报错,不能单双引号搭配

        </script>

      

      字符串转义符

        类似HTML里面的特殊字符,字符串中也有特殊字符,我们称之为转义符

        转义符都是\开头的,常用的转义符及其说明如下:

        \n 换行符,n是newline的意思

        \\ 斜杠\

        \' ‘单引号

        \" “双引号

        \t tab缩进

        \b 空格,b是blank的意思


        <script>

          var str1 = '我是一个"高富帅"的\n程序员'; // 使用了转义符\n表示换行显示

          console.log(str1);

        </script>           


      字符串长度

        字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。    


        <script>

          var str = 'my name is andy';

          console.log(str.length); // 返回字符串长度15

          alert(str.length); // 弹窗显示15

        </script> 


      字符串拼接

        多个字符串之间可以使用+进行拼接,其拼接方为字符串+任何类型=拼接之后的新字符串

        拼接前会把与字符串相加的任何类型转成字符串,再拼接成一个新的字符串

        +号总结口诀:数值相加,字符相连


        <script>

          console.log('沙漠'+'骆驼'); // 沙漠骆驼

          console.log('pink老师'+18); // 'pink老师18'

          console.log('pink'+ true); // pinktrue

          console.log(12+12); // 24

          console.log('12'+12); // '1212'

          alert('hello' + ' ' + 'world'); // hello world

          alert('100' + 100); // 100100

          alert('11' + 12); // 1112

        </script> 


      字符串拼接加强

        变量和字符串相连的口诀:引引加加


        <script>

          var age = 18; // 可以很方便的修改变量的值来改变输出结果,变量通过和字符串相连的方式实现的

          console.log('pink老师' + age + '岁');

        </script> 


    3)Boolean布尔型

      布尔类型有两个值:true和flase,其中true表示真(对),而flase表示假(错)

      当布尔值与数字型相加时,true值为1,false值为0

      

      <script>

        var flag = true;

        var flag1 = flase;

        console.log(flag +1); // 2

        console.log(flag1 +1); // 1

      </script> 

    

    4) undefined和null

      一个声明后没有被赋值的变量会有一个默认值undefined(如果进行相连或者相加时,注意结果)

      <script>     

        var variable; // 也可以这么写var variable = undefined; 两种效果是一样的

        console.log(variable); // undefined

        console.log('你好' + variable); // 你好undefined

        console.log(variable + 11); // NaN  undefined 和 数字相加 返回 NaN

        console.log(variable + true); // NaN

      </script> 


      一个声明变量给null值,里面存的值为空

      <script>

        var vari = null;

        console.log('你好' + vari); // 你好null

        console.log(11 + vari); // 11

        console.log(true + vari); // 1

      </script> 


  获取变量数据类型

    typeof可以用来获取检测变量的数据类型


    <script>

      var num = 10;

      console(typeof num); // number

      var str = 'pink';

      console(typeof str); // string

      var flag = true;

      console(typeof flag); // boolean

      var vari = undefined;

      console(typeof vari); // undefined

      var timer = null;

      console(typeof timer); // object


      // prompt 取过来的值是字符型的

      var age = prompt('请输入你的年龄:')

      console.log(age);

      consol.log(typeof age); // string

    </script>    


  字面量  

    浏览器控制台中会对输出的变量标记不同的颜色(以chrome为例),通过浏览器可以大致判断变量的类型    


    <script>

      console.log(18); // 蓝色,数字型

      console.log('18'); // 黑色,字符串型

      console.log(true); // 深蓝,布尔型

      console.log(undefined); // 浅灰色

      console.log(null); // 浅灰色

    </script>  


    字面量是源代码中一个固定值的表示法,通俗来说,就是字面量表示如何表达这个值


    数字字面量:8,9,10

    字符串字面量:'黑马程序员','大前端'

    布尔字面量:true,false


  数据类型转换

    什么是数据类型转换

      使用表单、prompt获取过来的数据默认是字符串类型的,此时就不能直接简单的进行加法运算,而需要转换变量的数据类型。通俗来说,就是把一种数据类型的变量转换成另外一种数据类型

    

    我们通常会实现3种方式的转换:

      1)转换为字符串类型(3种方法)

      toString()函数  转成字符串  var num=1;alert(num.toString());

      String()强制转换函数 转成字符串  var num = 1;alert(String(num));

      加号拼接字符串  和字符串拼接的结果都是字符串, 我们更喜欢这种换转方式,这种方式也称为隐式转换。  var num =1;alert(num + '我是字符串');


      <script>

        // 把数字转换成字符串

        // 1.利用toString()

        var num = 10;

        var str = num.toString();

        console.log(str);

        console.log(typeof str);

        // 2.利用String()

        console.log(String(num));

        // 3.利用字符串相加(隐式转换)

        console.log(num + ''); // 10 

      </script> 


      2)转换为数字型(4种方法)

      parselnt(string)函数  将string类型转成整数数值型  parselnt('78');

      parseFloat(string)函数  将string类型转成浮点数数值型  parseFloat('78.21');

      Number()强制转换函数  将string类型转换为数值型  Number('12');

      js 隐式转换(- * /)   利用算术运算隐式转换为数值型 '12' - 0


      注意:parseInt()和parseFloat()这两个函数单词的大小写,这2个是重点

      隐式转换是我们在进行算数运算的时候,js自动转换了数据类型


      <script>

        // var age = prompt('请输入您的年龄:');

        // 1. parseInt()  可以把 字符型的转换为数字型 得到是整数

        //  console.log(parseInt(age));

        console.log(parseInt('3.14'));  // 3  取整

        console.log(parseInt('3.94'));  // 3  取整

        console.log(parseInt('120px')); // 120 会去掉这个px单位

        console.log(parseInt('rem120px')); // NaN

        // 2.parseFloat() 可以把 字符型的转换为数字型 得到是小数 浮点数

        console.log(parseFloat('3.14')); // 3.14

        console.log(parseFloat('120')); // 120

        console.log(parseFloat('rem120px')); // NaN

        // 3.利用Number()

        var str = '123';

        consol.log(Number(str));

        console.log(Number('12'));

        // 4.利用算数运算 - * / (隐式转换)

        console.log('12' - 0); // 12 数字型

        console.log('123' - '120'); // 3 数字型

        console.log('123' * 1); // 123 数字型

      </script> 


      3)转换为布尔型

        Boolean()函数 其他类型转成布尔值  Boolean('true');


        代表空、否定的值会被转换为flase,如''、0、NaN、null、undefined

        其余值都会被转换为true


        <script>

          console.log(Boolean('')); // false

          console.log(Boolean(0)); // false

          console.log(Boolean(NaN)); // false

          console.log(Boolean(null)); // false

          console.log(Boolean(undefined)); // false

          console.log(Boolean('小白')); // true

          console.log(Boolean(12)); // true

        </script> 


4.拓展阅读-编译和解释语言

  计算机不能直接理解任何除机器语言以外的语言,所以必须要把程序员所写的程序语言翻译成机器语言才能执行程序。程序语言翻译成机器语言的工具,被称为翻译器。


  翻译器翻译的方式有两种:一种是编译,另外一个是解释。两种方式之间的区别在于翻译的时间点不同

    编译器是在代码执行之前进行编译,生成中间代码文件

    解释器是在运行时进行及时解释,并立即执行(当编译器以解释方式运行的时候,也称之为解释器)


    编译型语言Java(login.java) - 编译 - 中间代码文件(login.class) - 运行时编译(即时编译器程序) - 机器语言 - 执行


    解释型语言JavaScript(login.html) - JavaScript引擎(解释器) - 机器语言 - 执行


  类似于请客吃饭:

    编译语言:首先把所有菜做好,才能上桌吃饭

    解释语言:好比吃火锅,边吃边涮,同时进行  

    

  编译型语言运行快,跨平台效果好,解释型语言需要逐行解释执行,两者各优劣


5.拓展阅读-标识符、关键字、保留字

  标识符

    标识(zhi)符:就是指开发人员为变量、属性、函数、参数取的名字

    标识符不能是关键字或保留字


  关键字

    关键字:是js本身已经使用了的字,不能再用它们充当变量名、方法名

    包括:break、case、default、return、this、try、var、with......等


    保留字:实际上就是预留"关键字",意思是现在虽然还不是关键字,但是未来可能会成为关键字,同样不能使用它们当变量名或方法名。

    包括:boolean、byte、char、class、const、debugger、double......等

   

  不用刻意去记它,它们在vscode中会用红色波浪线来表示不可引用,我们尽量不使用即可


本章节从变量类型开始讲得很串,课程标题和内容感觉上有少许差异!!!

点赞 评论 引用 举报

Ljfy

发帖: 0粉丝: 1

级别 : 新手上路

发消息 + 关注

发表于2020年07月13日 17:39:39
直达本楼层的链接
7#
显示全部楼层
华为云ID:hw49725702 ### 数据类型 数据类型: - 基本数据类型(值类型) - 1.`Number`:用于任何类型的数字:整数或浮点数 - 2.`String`:用于字符串:一个字符串可以包含一个或多个字符串 - 3.`Boolean`:用于true和false - 4.`null`:用于未知的值 - 5 `undefined`:未定义 - 6.`Symbol`:唯一的标识符 - 7.`BigInt`:用于任意长度的整数 - 引用类型 - `Object`:用于更复杂的数据结构 - 普通对象 - 数组对象 - 正则对象 - Date对象 > "JavaScript中有八种基本的数据类型(前七种为基本的数据类型也称原始类型)而Object为复杂数据类型" **type操作符** ```javascript console.log(typeof aaa);//undefined,这个变量没有定义但是不会报错,aaa此时是变量 console.log(typeof 1.1);//number数字型 console.log(typeof '1');//string 字符型 console.log(typeof true);// 布尔类型 boolean console.log(typeof {});//object 是一个对象 console.log(typeof function(){});// function 是一个方法,也是属于object类型的js里万物皆对象 console.log(typeof null);//object(1) null 是一个空指针 console.log(typeof Symbol("id"));//symbol ``` `typeof null 的结果是object`这其实是不对的,官方也承认了这是运算符的问题,现在只是为了兼容性留了下来。是javascript语言的一个错误 **Number `JavaScript` 中的变量可以保存任何数据。变量在前一刻可以是个字符串,下一刻就可以变成 `number`类型: ```js //没有错误 let message = 'hello'; message = 1234; ``` 允许这种操作的编程语言称为动态类型的编程语言。 `JavaScript`中有八种基本的数据类型。 ### Number类型 ```js let n = 123; n = 12.45; ``` `number`类型代表整数和浮点数。 八进制 0~7 程序里面数字前面加0 表示八进制 ```js let num = 011; console.log(num); //转为十进制就是9 ``` 十六进制 0-9 a-f 数字前面加0x表示十六进制 ```js let num1 = 0x9; console.log(num); ``` 数字型最大值: ```js console.log(Number.MAX_VALUE);//1.7976931348623157e+308 ``` 数字型最小值: ```js console.log(Number.MIN_VALUE);//5e-324 ``` 数字可以有很多操作,比如。+ - * / % 等等。 除了常规数字,还有特殊数值 也属于这种类型 :`Infinity`、`-Infinity` 和 `NaN`。 - `Infinity `无穷大 ∞。 大于任何值 我们可以通过除以 `0 `来得到它: ```js alert(1 / 0); //Infinity ``` isNaN()这个方法用来判断非数字 并且返回一个值,如果是数字返回的是false,如果不是数字返回的是true ```js console.log(isNaN(25));//false console.log(isNaN("呵呵"));//true ``` - isNaN - 检测当前值是否是有效数字,返回true代表不是有效数字,返回false是有效数字 - `isNaN(12)===false` - `isNaN('1')===false` - `isNaN(true)===false` - `isNaN(false)===false` - `isNaN(null)===false` - `isNaN(undefined)===true` - `isNaN({name:9})===true` - `isNaN([11,12])===true` - `isNaN([12])===false` isNaN检测的机制 - 首先验证当前要检测的值是否为number类型的,如果不是,浏览器会默认的把值转换为数字类型 - 把非数字类型转换为数字 - 其它基本类型转换为数字,直接使用Number这个方法转换的,如果当前字符串中出现任意一个非有效数字结果则为NaN - 当检测的值已经是数字类型,是有效数字返回false,不是返回true **NAN的比较** `NaN == NaN:false NaN`和谁都不相等 检测是否为有效数字 ```js if(isNaN(num)){ // 检测是否为有效数字 } ``` ### BigInt 类型 在JavaScript中 " number"类型无法代表大于 253 (或者小于-253)的整数。 通过n附加到整数字段的末尾来创建BigInt ```js const bigInt = 12312312312231231313131313n; ``` 兼容性问题 目前 `Firebox `和 `Chrome` 已经支持 `BigInt`了,但 `Safari`/`IE`/`Edge` 还没有。 ### String类型 JavaScript中的字符必须被括在引号里。 ```js let str = '哈哈'; let str1 = "你猜" let phease = `can embed ${str}`; ``` 转义符\开头 常用的转义符: - \n 换行 - \\ 斜杠\ - \' 单引号 - \" 双引号 - \t tab缩进 - \b 空格 案例: ```js alert('锄禾日当午\n"汗滴和下土"'); ``` 字符串长度通过字符length属性可以获取整个字符串长度 ```js let str = 'This is a cat'; console.log(str.length);//13 ``` 字符串拼接 多个字符串之间可以使用 + 进行拼接 可以加任何类型的。 ```js let name= 'vue'; console.log(name+'真棒!')//vue真棒! console.log('12'+24);//1224 console.log(12+24);//36 ``` 新增属性:反引号是 **功能扩展**引号。他们允许我们通过变量和表达式包装在${...}中,来将它们嵌入到字符串中。例如: ```js let name = "json"; //嵌入一个变量 alert(`helo,${name}!`);//helo,json! ``` ${...}内的表达式 会被计算,计算结果会成为字符串的一部分。可以再${...}内放置任何东西:名为name的变量,或者1 +1的算数表达式。 需要注意的是,这仅仅在反引号内有效,其它引号不允许这种嵌入。 ```js alert("the result is ${ 1 + 1 }");//使用双引号不会计算 ${...} ``` ### Boolean类型(逻辑类型) `boolean` 类型仅包含两个值:`true` 和 `false` 通常用于存储 `yes`或 `no`的值:`true `|`yes`,`false` | ` no` ```js let num = 5 > 6; console.log(num); // false ``` ### null 值 特殊的 `null`值不属于上述任何一种类型。 它构成一个独立的类型,只包含 `null` 值 ```js let age = null; ``` `null` 仅仅代表一个无、空或值未知的特殊值 ### undefined 特殊值 `undefined` 和 `null`一样自成类型。 `undefined `的含义是未被赋值。 如果一个变量已被声明,那么它的值就是 `undefined`: ```js let x; alert(x);// 弹出undefined ``` ### object 类型 和 symbol 类型 object 类型是一个特殊类型。 其它所有的数据类型都被称为原生类型,因为他们的值只包含一个单独的内容(字符串、数字或者其它)。 `symbol`类型用于创建对象的唯一标识符。 ### typeof运算符 typeof 运算符返回参数的类型。当我们想要分别处理不同类型值得时候,或者想快速进行数据类型检验时,非常有用。 它支持两种语法形式: 1.作为运算符:`typeof` `x` 2.函数形式:`typeof(x)` 对 `typeof x` 的调用会以字符串的形式返回数据类型: ```js typeof undefined // "undefined" typeof true // "boolean" typeof alert //"function" typeof "foo" //"string" typeof Symbol("id") // "symbol" typeof 0 // "number" typeof null //"object" ``` ### 总结 JavaScript 中有八种基本的数据类型 (前七种为基本数据类型,也称原始类型,而object为复杂数据类型)。 - `number` 用于任何类型的数字:整数或浮点数,在 ±253范围内的整数。 - `bigint` 用于任意长度的整数。 - `string` 用于字符串:一个字符串可以包含一个或多个字符。 - `Boolean`用于 `true`和 `false`。 - `null` 用于未知的值。 - `undefined` 用于未定义的值。 - `symbol `唯一的表示符。 - `object` 更复杂的数据类型。
点赞 评论 引用 举报

小妖现世

发帖: 0粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 19:53:18
直达本楼层的链接
8#
显示全部楼层

华为云ID:hw11388395

JS的组成:ECMAScript, DOM, BOM

JS 输入输出语句:

    alert(msg):浏览器弹出竟是框

    console.log(msg):浏览器打印输出信息

    prompt(info):浏览器弹出输入框,用户可以输入

变量:声明变量,赋值,注意大小写,不能以数字开头,不能是关键字

变量赋值:声明变量并赋值

数据类型:简单数据类型,复杂数据类型

简单数据类型:Number,Boolean,String,Undefined,Nul

Infinity:无穷大

-Infinity:无穷小

NaN:非数值

isNaN:可以检测是否为有效数字

字符串拼接:多个字符串之间可以使用+进行拼接;变量是不能添加引号的因为加引号的变量会变成字符串

Boolean:true,false

转换为字符串:

    toString:转成字符串

    String:强制转换字符在

    加号拼接字符串

转换为数字型:

    parseInt,parseFloat

    Number 强制转换

Boolean:只有false,0,NaN,null,undefined转换Boolean为false

typeof检测数据类型:

console.log(typeof aaa);//undefined

console.log(typeof 1.1);//number

console.log(typeof '1');//string 

console.log(typeof true);//  boolean

console.log(typeof {});//object

console.log(typeof function(){});// function 

console.log(typeof null);// null 

console.log(typeof Symbol("id"));//symbol

运算符:

算术运算符:+,-,*,/,%

注意:浮点数最高精度是17位小数,进行算术计算时其精确度远远不如整数,不要直接判断两个浮点数是否相等

递增(++),递减(--)

递增和递减必须和变量配合使用

比较运算符:<, >, >=, <=, ==, !=

逻辑运算符:

    &&:两侧都为true返回true,否则为false

    ||:一侧都为true返回true,否则为false

    !:去反符

短路运算:

   表达式1 && 表达式2:表达式1结果为真,则返回表达式2,反之相反

   表达式1 || 表达式2:表达式1结果为真,则返回表达式1,反之相反

for循环:

    循环的目的:有规律的重复操作

    for(初始化变量;条件表达式;操作表达式){

        //循环体

    }

while循环:

    while(条件表达式){

        //循环体代码

    }

do while循环:

    do {

        //循环体

    }while():

continue:跳出本次循环,继续下一次循环

break:立即跳出整个循环




点赞 评论 引用 举报

Crypto

发帖: 0粉丝: 1

级别 : 新手上路

发消息 + 关注

发表于2020年07月13日 22:28:26
直达本楼层的链接
9#
显示全部楼层

ID:hw63293550


JS第一章数据类型:

7.13今天终于开始了第二阶段课程--JavaScript了,对于半路出家的我这一部分同学来说,我感觉第二阶段的这一章课程是相当友好,从来没有系统的学习过这些基础的知识点:


① 什么是编程语言?

 - 机器语言(二进制数据)

 - 汇编语言(包含了简单的英文字母有助于标记和记忆)

 - 高级语言(个人理解就是能够进行复杂逻辑操作的智能语言,包括几乎所有的后端语言【php,java,go,python…】和前端最经典随处可见的JavaScript等等)


② js的组成有哪三部分?

 - ECMAScript(所谓的ECMA就是給js制定语法规则的一个欧洲国际组织,类似于html里的W3C组织)

 - DOM(这是jQuery时代提及最多的一个模型了,根据英文单词来记忆--“文档对象模型”)

 - BOM(提及DOM,BOM也是不可不提的,老师说后面会详细讲这两个模型,名为浏览器对象模型)


③ js的三种使用方式是?

 - 外联js文件(使用script标签引入外部js文件,注意这里引入的文件也可以是外网的js文件,js文件的引用没有跨域问题哦!~

 - 内嵌js代码(也是使用script标签,在标签内编写js代码即可)

 - 行内js代码(最经典的例子就是原生js的监听点击事件触发函数(onclick),课程讲到这里的时候我想到的是a标签的href的使用“JavaScript:XXX”,注意这里不适合复杂逻辑的大量代码的场景使用


④ js的五种基础数据类型有哪些?(其实关于js的基础数据类型,再更新还涉及新增的symbol类型等等啥的,有新的定义和概念,有点儿小遗憾没讲到这一块)

 - 字符串(String:数值转换成字符串方法有三【toString()、String()、(num + '我是字符串,该方法也叫隐性转换')】)

 - 数字(Number:相对于字符串,字符串转数字方法有四【parseInt()、parseFloat()、Number()、('num' -*/ num)】,注意这里的-*/符号是任选其一即可,数字类型验证方法为“isNaN()”。ps:数字类型分为整数型和浮点型,所以可以和字符串的三种转换方法对应起来记忆使用

 - 布尔(Boolean:布尔值只有两个【true、false】,转换方法只有一种【Boolean()】)

 - undefined(未定义:最常见的就是变量申明了,但是最后没有赋予任何数据类型的值,注意这里有个变量初始化的概念:申明了变量并赋予了数据类型。所以未定义可以理解为是未被初始化的变量

 - null(空:注意这是一个单独的基础数据类型,和undefined不一样

 ④-① js数据类型的验证方法:[typeof 需要验证的数据类型]。(得到返回的是字符串类型,字符串的内容是被验证数据类型的类型,比如:typeof '我是字符串' 结果:"string")


⑤ 在编程语言的高级语言里可以分为两类:编译类型+解释类型

 - 编译类型:可以理解为大多后端语言的类型,都是先把所有的源代码通过编译器编译好生产一个中间文件,最后再运行这个中间文件输出

 - 解释类型:理解起来相对的就是像JS这样的高级编程语言,是一行一行的通过js解释器运行代码输出

image.png

PS:总结起来就是“执行的时间点不一样”。讲到这里老师打了个很形象的比方,印象颇深:编译类型语言就像是吃饭的时候菜上完了才开始吃,解释类型语言就是吃火锅,边涮羊肉边往嘴里吃,哈哈哈。


总的来说吧,还有关于js的变量申明和概念、还有基本的三大弹窗(alert()、comfirm()、prompt()),以及基本数据类型的转换计算等等,都是必须掌握的,但这些还是得通过多多手敲来熟悉和记忆。好了,话不多说,我要再去练练手了……





JS第二章运算符

提到运算符,让人最容易想到的就是“+-*/”了,当然,这没错,但不是全部,加减乘除只能说是算术运算符,与之相对的还有逻辑运算符“&|!”(俗称与或非)。


① 算术运算符:

 【+-*/】:加减乘除,这就不比说了,是基础的也是必会的部分。只是要注意“+”号符,它除了数值运算之外还有上节课提到的js拼接符的作用!

 算术运算符的衍生(下面举例的“a”都是提前申明赋值为“0”的number类型变量):

 【++】:分为符号在后和符号在前的情况(a++和++a),虽然翻译过来都是“a=a+1”,但运算出来的结果是不一样的,a++是先赋值,后运算,所以打印a++的结果是a本身(0);++a则是先运算再赋值所以打印++a的结果为运算后的结果(1)

 【--】:和++运算符几乎一样,只是符号变了,翻译过来都是“a=a-1”。(ps:后面的联系题里大多会用到这两个概念,同学们注意区分哈!~


② 逻辑运算符(得到返回的结果为布尔值Boolean,即“true”和“false”):

 【&&】:与,简单翻译就是“而且”的意思,也就是说必须运算符两边同时满足“true”的才能得到“true”,有一个或者没有“true”,都会返回false

 【||】:或,翻译就是或者,这个符号是竖线,键盘上中括号的下面的一个键就是了,或者的意思就是,只要两边至少满足一个“true”,即可返回true

 重要补充说明:逻辑运算符两边表达式如果得到的结果是Boolean,则按上面的规则来判断返回结果,如果是其他基础数据类型,&&运算为true则返回最后一个判断的具体值,否则返回第一个判断为false的具体值;对应的||运算如果为true,则返回第一个判断为true的具体值,否则返回最后一个判断为false的具体值。


③ 判断结构(if+switch):

if (condition1){……} else if (condition2){……} else {……}

switch (判断表达式){case 判断的值:……;break;case 判断的值:……;break;default:……;break;}

区分:if对于复杂逻辑和多条件表达式比较实用,而switch是单一表达式判断不同值的场景下使用,可使用情况有限;另外值得一提的是:switch可以转换成if表达,但if就不一定能转换成switch的表达式!


以上就是对于这节课程的个人总结,个人感觉这节课程对于js的逻辑结构开始接触到,就可以变得相对复杂一点,是基础知识点,但也是重点知识点,这也是js也属于高级编程语言的原因之一了吧……






JS课程第三章循环结构:

相对于上节课的判断结构来说,逻辑结构还有个不得不提的循环结构,通常这俩结构会混合在一起使用,以完成复杂的逻辑判断输出。回顾上节课的判断结构有【if+switch】,相对的这节课的循环结构有【for+while】:


① FOR循环:

for([计数器变量];[判断可进入循环体的条件];[递变的步长表达式]){[循环体]},这是格式。注意:中间的是三个参数都是分号“;”分开,计数器变量必须申明变量,步长表达式一般操作计数器变量的值,让不同的计数器去判断,判断的时候尽量避免进入死循环。

    for (var i = 0; i < 10; i++) {

        console.log(i);

    }


② WHILE循环:

while([判断条件]){]循环体];[递变步长表达式];},这是格式。注意:只要当条件满足就会进入循环体,并且不要忘记给判断条件的变量做递变处理,否则容易进入死循环。

    var i = 0;

    while (i<=1){

        console.log(i);

        i++;

    }


③ 关于“断点”的知识,我以前也一直不太清楚,看到这个节课程里有提到这个知识点,觉得有必要做下笔记:

    断点:在循环结构的循环体或者函数的函数内部做上标记,可以阶段性的测试运行的结果或者数据,这样做的好处就是避免每次执行的时候都全部执行,对于调试工作来说,能让开发者更快更准确的找到bug问题。

    浏览器调试操作:按F12或者右键审查元素,出现程序员调试工具界面,然后选择“source”或者“源文件”,可以看到当前页面加载的所有资源文件,这时候可以选择点击妳需要调试的页面或文件,进入调试的分屏窗口,在妳想要调试的“内部”,鼠标左键点击行数的地方,可以开启断点,断点开启后,F8是全部运行,F10是一个一个的运行测试,Ctrl+F8是禁用所有断点。


好了,不管是循环结构的使用,还是断掉调试,都是我们程序工作开发者都应该掌握的必备知识点,get √,共勉!

        

第二阶段第一课.zip 265.03 KB,下载次数:1

第二课js运算符.zip 108.67 KB,下载次数:1

第三章循环结构.zip 112.08 KB,下载次数:0

点赞 评论 引用 举报

小米粒-biubiubiu

发帖: 0粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年07月13日 23:52:54
直达本楼层的链接
10#
显示全部楼层

华为云ID:hw49725702

数据类型

数据类型:

  • 基本数据类型(值类型)

    • 1.Number:用于任何类型的数字:整数或浮点数

    • 2.String:用于字符串:一个字符串可以包含一个或多个字符串

    • 3.Boolean:用于true和false

    • 4.null:用于未知的值

    • undefined:未定义

    • 6.Symbol:唯一的标识符

    • 7.BigInt:用于任意长度的整数

  • 引用类型

    • 普通对象

    • 数组对象

    • 正则对象

    • Date对象

    • Object:用于更复杂的数据结构

"JavaScript中有八种基本的数据类型(前七种为基本的数据类型也称原始类型)而Object为复杂数据类型"

type操作符

console.log(typeof aaa);//undefined,这个变量没有定义但是不会报错,aaa此时是变量console.log(typeof 1.1);//number数字型console.log(typeof '1');//string 字符型console.log(typeof true);// 布尔类型 booleanconsole.log(typeof {});//object 是一个对象console.log(typeof function(){});// function 是一个方法,也是属于object类型的js里万物皆对象console.log(typeof null);//object(1) null 是一个空指针console.log(typeof Symbol("id"));//symbol

typeof null 的结果是object这其实是不对的,官方也承认了这是运算符的问题,现在只是为了兼容性留了下来。是javascript语言的一个错误

**Number

JavaScript 中的变量可以保存任何数据。变量在前一刻可以是个字符串,下一刻就可以变成 number类型:

//没有错误let message = 'hello';message = 1234;

允许这种操作的编程语言称为动态类型的编程语言。

JavaScript中有八种基本的数据类型。

Number类型

let n = 123;n = 12.45;

number类型代表整数和浮点数。
八进制 0~7 程序里面数字前面加0 表示八进制

let num = 011;console.log(num); //转为十进制就是9

十六进制 0-9 a-f 数字前面加0x表示十六进制

let num1 = 0x9;console.log(num);

数字型最大值:

console.log(Number.MAX_VALUE);//1.7976931348623157e+308

数字型最小值:

console.log(Number.MIN_VALUE);//5e-324

数字可以有很多操作,比如。+ - * / % 等等。

除了常规数字,还有特殊数值 也属于这种类型 :Infinity-Infinity 和 NaN

  • Infinity无穷大 ∞。 大于任何值

我们可以通过除以 0来得到它:

alert(1 / 0); //Infinity

isNaN()这个方法用来判断非数字 并且返回一个值,如果是数字返回的是false,如果不是数字返回的是true

console.log(isNaN(25));//falseconsole.log(isNaN("呵呵"));//true
  • isNaN

    • 检测当前值是否是有效数字,返回true代表不是有效数字,返回false是有效数字

    • isNaN(12)===false

    • isNaN('1')===false

    • isNaN(true)===false

    • isNaN(false)===false

    • isNaN(null)===false

    • isNaN(undefined)===true

    • isNaN({name:9})===true

    • isNaN([11,12])===true

    • isNaN([12])===false

isNaN检测的机制

  • 首先验证当前要检测的值是否为number类型的,如果不是,浏览器会默认的把值转换为数字类型

    • 把非数字类型转换为数字

    • 其它基本类型转换为数字,直接使用Number这个方法转换的,如果当前字符串中出现任意一个非有效数字结果则为NaN

  • 当检测的值已经是数字类型,是有效数字返回false,不是返回true

NAN的比较

NaN == NaN:false NaN和谁都不相等

检测是否为有效数字

if(isNaN(num)){
    // 检测是否为有效数字}

BigInt 类型

在JavaScript中 " number"类型无法代表大于 253 (或者小于-253)的整数。

通过n附加到整数字段的末尾来创建BigInt

const bigInt = 12312312312231231313131313n;

兼容性问题

目前 Firebox和 Chrome 已经支持 BigInt了,但 Safari/IE/Edge 还没有。

String类型

JavaScript中的字符必须被括在引号里。

let str = '哈哈';let str1 = "你猜"let phease = `can embed ${str}`;

转义符\开头 常用的转义符:

  • \n 换行

  • \ 斜杠\

  • \' 单引号

  • \" 双引号

  • \t tab缩进

  • \b 空格

案例:

  alert('锄禾日当午\n"汗滴和下土"');

字符串长度通过字符length属性可以获取整个字符串长度

let str = 'This is a cat';console.log(str.length);//13

字符串拼接
多个字符串之间可以使用 + 进行拼接 可以加任何类型的。

  let name= 'vue';
  console.log(name+'真棒!')//vue真棒!
  console.log('12'+24);//1224
  console.log(12+24);//36

新增属性:反引号是 功能扩展引号。他们允许我们通过变量和表达式包装在${...}中,来将它们嵌入到字符串中。例如:

let name = "json";//嵌入一个变量alert(`helo,${name}!`);//helo,json!

${...}内的表达式 会被计算,计算结果会成为字符串的一部分。可以再${...}内放置任何东西:名为name的变量,或者1 +1的算数表达式。

需要注意的是,这仅仅在反引号内有效,其它引号不允许这种嵌入。

alert("the result is ${ 1 + 1 }");//使用双引号不会计算 ${...}

Boolean类型(逻辑类型)

boolean 类型仅包含两个值:true 和 false

通常用于存储 yes或 no的值:true|yesfalse | no

let num = 5 > 6;console.log(num); // false

null 值

特殊的 null值不属于上述任何一种类型。

它构成一个独立的类型,只包含 null 值

let age = null;

null 仅仅代表一个无、空或值未知的特殊值

undefined

特殊值 undefined 和 null一样自成类型。

undefined的含义是未被赋值。

如果一个变量已被声明,那么它的值就是 undefined:

let x;alert(x);// 弹出undefined

object 类型 和 symbol 类型

object 类型是一个特殊类型。

其它所有的数据类型都被称为原生类型,因为他们的值只包含一个单独的内容(字符串、数字或者其它)。

symbol类型用于创建对象的唯一标识符。

typeof运算符

typeof 运算符返回参数的类型。当我们想要分别处理不同类型值得时候,或者想快速进行数据类型检验时,非常有用。

它支持两种语法形式:

1.作为运算符:typeof x

2.函数形式:typeof(x)

对 typeof x 的调用会以字符串的形式返回数据类型:

typeof undefined // "undefined"typeof true // "boolean"typeof alert //"function"typeof "foo" //"string"typeof Symbol("id") // "symbol"typeof 0 // "number"typeof null //"object"

总结

JavaScript 中有八种基本的数据类型 (前七种为基本数据类型,也称原始类型,而object为复杂数据类型)。

  • number 用于任何类型的数字:整数或浮点数,在 ±253范围内的整数。

  • bigint 用于任意长度的整数。

  • string 用于字符串:一个字符串可以包含一个或多个字符。

  • Boolean用于 true和 false

  • null 用于未知的值。

  • undefined 用于未定义的值。

  • symbol唯一的表示符。

  • object 更复杂的数据类型。


评论
7号小助手 2020-7-14 10:00 评论

请问您这华为云id是有出入么?

... 查看全部
小米粒-biubiubiu 2020-7-16 11:24 评论

评论 7号小助手:我第一遍 发错了,第二遍 dzx_huawei 才是对的

... 查看全部
点赞 评论 引用 举报