javascript基础入门之js中的数据结构与数据转换01

js的组成(ECMAScript、BOM、DOM)
        js中的打印语句:
        数据类型
        变量
        运算符
        数据类型转换
        js中三大特殊值

js的组成(ECMAScript、BOM、DOM)

①ECMAScript: ECMAScript是一个标准,它规定了语法、类型、语句、关键字、保留子、操作符、对象。(相当于法律);
②BOM(浏览器对象模型):对浏览器窗口进行访问和操作操作;
③DOM(文档对象模型):DOM把整个页面映射成一个多层节点结构。HTML页面组成都是某种类型的节点,这些节点又包含着不同类型的数据;
js中的打印语句:

①alert()  弹窗 弹出框,阻塞程序执行;
    ②document.write()   页面 打印页面,影响布局,某些情况下会覆盖页面;
    ③console.log();   打印到控制台;
    ④prompt()   打印可以输入对话的弹窗(弹出对话框);
    ⑤confirm()  弹出框    弹出一个确定或取消的对话框;

数据类型

1简单(原始)数据类型
①string 字符串 字符String 引号(’,") 引号包裹的数据都是字符;
②number 数字
NaN也是数字类型,表示not a number,无法计算结果
③Boolean 布尔 true false
④undefind 未赋值
⑤null 空
ES6中新增类型:
⑥symbol

复杂(对象)数据类型
    ①object 对象 用{} 包裹
    ②array 数组 用 [] 包裹
    ③function 函数

3.数据类型的检测typeof
运行返回类型值有:
string, 字符串
boolean, 布尔值(true/false)
number, 数字(包括NaN,isNaN()用来判断数据是否是NaN)
undefined, 未定义
object, 对象
function 函数
变量

变量的创建:
    声明:var,
    赋值运算符:=
关于变量命名注意事项:
    ①必须使用字母或者_或者$开头
    ②前缀最好使用数据类型的开头字母,能够更加语义化
    ③不能使用关键字和保留字作为变量名
            常见关键字:typeof,var,break,continue,return,default等等

运算符

1.算数运算符
+ 加(当+号两边,只要出现一个字符,那么就是字符串的拼接(连接),两边都是数值,才是数值的+)
- 减(和字符相加会隐式转换)
* 乘(和字符相加会隐式转换)
/ 除(和字符相加会隐式转换)
% 取余(和字符相加会隐式转换)

2.关系运算符
< 小于
> 大于
<= 小于
>= 大于等于
== 等于(注意一个"="是赋值)
=== 严格等于(没有隐式类型转换,比较时不仅比较值,还比较数据类型)

3.逻辑运算符
|| 或(有一个为true即为true)
&& 且(有一个为false即为false)
! 非(取反)

4.自增自减
n++ 先运算后增加,每次加一
++n 先增加后运算,每次加一
n-- 先减少后运算,每次减一
–n 先减少后运算,每次减一

5.赋值运算符
= 赋值
+= 累加
-= 减等
*= 乘积
/= 除等于
数据类型转换

1.字符转数值
①parseInt() 解析一个字符串,返回一个整数,从左到右检测,遇到数字转换,遇到非数字停止,第一位就非数字,转换停止输出NaN,会过滤小数点后面的内容,认为小数点是非数字;可以把其他进制转换成十进制,语法:parseInt(num,2/8/16)
②parseFloat() 解析一个字符串,返回一个浮点数,、从左到右检测,遇到数字转换,遇到非数字转换,遇到非数字停止,输出NaN,可以识别第一个小数点,第二个无效;
③Math.round() 严格转换,取最近的整数,不允许出现任何非数字,出现即为NaN;
④number() 严格转换,强制转换,可以识别小数点,不允许出现任何非数字,出现即为NaN

2.数字转字符
①num.tostring() 直接转换,相当于给数值添加了一个引号,另外还可以把十进制转换成其他,语法:num.toString(2/8/16)
②num.toFixed() 与toString一致,可以四舍五入保留n位小数

3.隐式类型在if场景下的转换规则(任何类型最终都以布尔值的形式存在ture/false):
①数值:两个数值比较,只要不出现0即为ture;
②字符:两个字符相比较,只要非空(双引号内啥也没有,包括空格)即为ture;
③对象:对象都为ture;
④数组:数组都为ture;
⑤函数:函数都为ture;
⑥underfind,NaN,null:三者出现都为false;

4.isNaN
js中三大特殊值

NaN,underfind,null
————————————————

附上csdn博客地址:
版权声明:本文为CSDN博主「、放肆」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43752578/article/details/100144904

javascript基础入门之js中的数据类型与数据转换01的更多相关文章

  1. javascript基础入门之js中的结构分支与循环语句

    javascript基础入门之js中的结构分支与循环语句 程序的结构①顺序结构:自上而下:②选择(分支)结构:多条路径,根据不同的条件,只执行其中一个:③循环结构:重复某些代码④配合特定的语句实现选择 ...

  2. Javascript高级编程学习笔记(3)—— JS中的数据类型(1)

    前一段时间由于事情比较多,所以笔记耽搁了一段时间,从这一篇开始我会尽快写完这个系列. 文章中有什么不足之处,还望各位大佬指出. JS中的数据类型 上一篇中我写了有关JS引入的Script标签相关的东西 ...

  3. JavaScript基础入门04

    目录 JavaScript 基础入门04 JavaScript 对象 介绍 关于键名 对象的引用 语句和表达式需要注意的地方 对象属性常见的操作 with语句 JSON 特点 语法规则 JSON合法示 ...

  4. JS中判断数据类型的几种方法

    1⃣️首先我们来了解一下js中的数据类型 1.基本数据类型:Undefined.Null.Boolean.Number.String(值类型) 2.复杂数据类型:Object(引用类型) (值类型和引 ...

  5. JavaScript 基础入门

    JavaScript 基础入门   JavaScript 的组成 JS 由三部分组成,它们分别是:ECMAScript.DOM.BOM. ECMAScript     因为网景开发了JavaScrip ...

  6. JavaScript基础入门08

    目录 JavaScript 基础入门08 DOM 介绍 绑定事件 给一组元素绑定事件 节点 节点树 节点类型 选取文档内容 通过id选取元素 通过指定的标签名选取元素 用指定的css类来选取元素 通过 ...

  7. JavaScript基础入门07

    目录 JavaScript 基础入门07 BOM window对象 Navigator对象 Screen 对象 Location对象 History 对象 JavaScript 基础入门07 BOM ...

  8. JavaScript基础入门05

    目录 JavaScript 基础入门05 严格模式 严格模式的设计目的 如何开启使用严格模式 显式报错 字符串 字符串的创建 字符串实例方法之常用API JavaScript 基础入门05 严格模式 ...

  9. js中的数据类型及其转换

    Js中的数据类型 Js中的数据类型一共有六种,即number,string,boolean,underfine,null,object. 一,number Number数据类型指的是数字,可以为整型, ...

随机推荐

  1. nmon 定时任务 监控资源

    nmon命令: # ./nmon  –f  -s 30 –c 100 说明:-f 以文件的形式输出,默认输出是机器名+日期.nmon的格式,也可以用-F指定输出的文件名,例如: # ./nmon_x8 ...

  2. Spring import配置文件使用占位符

    import使用占位符 连接池切换导入配置的代码: <import resource="classpath:META-INF/spring/spring-${db.connection ...

  3. 使用IDEA快速搭建Springboot项目

    Spring Boot是由Pivotal团队提供的全新框架,设计目的是用来简化新Spring应用的初始搭建以及开发过程.它主要推崇的是'消灭配置’,实现零配置. 下面就介绍一下如何使用idea快速搭建 ...

  4. 牛客练习赛53 C 富豪凯匹配串

    思路: bitset的简单题,不幸的是当时的我并不知道bitset, C++的 bitset 在 bitset 头文件中,它是一种类似数组的结构,它的每一个元素只能是0或1,每个元素仅用1bit空间, ...

  5. spring基于注解的事务控制

    pom配置: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...

  6. Alpha版本后的心得体会

    Alpha版本后的心得体会 在我们一系列的努力之下,我们团队打造的校园互助式快递代取APP——U-Help的α版本终于能够问世了.尽管这个版本存在着这样那样的问题,但是我们还是对此抱有充足的信心.另一 ...

  7. Nginx反向代理与负载均衡应用实践(一)

    Nginx反向代理与负载均衡应用实践(一) 链接:https://pan.baidu.com/s/1xB20bnuanh0Avs4kwRpSXQ 提取码:migq 复制这段内容后打开百度网盘手机App ...

  8. c++之初始化列表

    #include<iostream> using namespace std; class Person{ public: int m_a; int m_b; int m_c; Perso ...

  9. Linux常用命令入门

    在Linux早期的版本中,由于不支持图形化操作,用户基本上都是使用命令行方式来对系统进行操作.掌握常用 的一些Linux命令是非常有必要的,下面将分类进行介绍.由于篇幅有限,在这里我们介绍命令时有些不 ...

  10. APICloud框架——融云+UIChatTools实现即时通讯聊天

    今天完成了公司app的聊天界面的收发消息功能,结合融云2和UIChatTools模块实现,只是实现了基本功能,好多细节还没有实现,废话不多说,上代码 输入框页面(win) 先引入所需模块 // 融云模 ...