ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

JavaScript初学

2021-02-11 14:02:03  阅读:142  来源: 互联网

标签:console JavaScript 数据类型 类型 初学 typeof 字符串 null


JavaScript初学

JavaScript语法

ECMAScript 的应用

  • JavaScript,JScript,ActionScript 等脚本语言都是基于 ECMAScript 标准实现的
  • JavaScript 在 ECMAScript 的基础上进行扩展

JavaScript 的组成

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rFs7cpHM-1613022609261)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208063754713.png)]

  • ECMAScript,规定语法、变量、数据使用方式
  • DOM,文档对象模型,文档树
  • BOM,浏览器对象模型,操作浏览器动作API

alert 语句

  • 在浏览器中弹出一个警示框,警示框的警示内容可为人为定义
  • 是一个 js 内置好的功能(函数、方法)
  • alert 语句作为一个函数,小括号内部可以传递参数,根据数据类型不同,有不同的语法要求
alert("这是一个警示框");	// 语法正确
alert(这是一个警示框);	// 语法错误

alert(1);	// 语法正确

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xVdctJqQ-1613022609264)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208163924293.png)]

prompt() 语句

  • prompt: 提示
  • 作用:弹出一个对话框,内部有一个提示语句以及一个输入框,可以在输入框中根据提示任意输入内容
  • 是一个 js 内置好的功能
  • 返回输入的数据(该数据是字符串类型的)
prompt("请输入您的年龄", "18");	//第二个参数相当于默认值

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ljhJPHQ0-1613022609268)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208164115436.png)]

prompt("请输入您的年龄");	//若不设置第二个参数,则输入框空白

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EOzegU7Y-1613022609271)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208164211743.png)]

console 控制台

  • js 有一个内置对象 console,内部封装了大量的属性和方法(函数),可以通过给 console 对象打点调用方法名(),属性名方式去执行。log方法,可在控制台实时输出。
console.log(1+2);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sxxD4dZx-1613022609273)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208165305001.png)]

数据类型

仅记录不太熟悉的部分

数字类型

整数

浮点数

  • 科学记数法:1.2e4 = 1.2 * 104, 1.2e-4 = 1.2 * 10-4
  • 浮点数值的最高精度是17位小数,但在进行算数计算时其精度远远不如整数
  • 因此,浮点数不适合做数值比较或判断大小

Infinity

NaN

  • not a number

  • 与任何值都不相等,包括其本身

  • isNaN(): 判断一个数据是不是一个NaN

字符串类型

undefined 类型

布尔类型

null 类型

  • 从逻辑角度,null 值表示一个空对象指针

对象类型

检测数据类型

  • 使用 typeof() 方法
console.log(typeof(1));
console.log(typeof("1"));
console.log(typeof(undefined));
console.log(typeof(null));
console.log(typeof(true));

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B5bAsxZO-1613022609274)(C:\Users\黎活宝\AppData\Roaming\Typora\typora-user-images\image-20210208214226227.png)]

  • typeof 作为关键字,后面加空格,空格后添加数据的方式,来检测数据
  • 但实现检测数据类型的作用,更推荐使用 typeof()
console.log(typeof 1);	// 结果也是number

数据类型转换

转换成字符串类型

  • 数据.toString() 方法
  • String(数据) 方法,当数据没有 toString() 方法时,使用 String(数据) 方法,例如数字类型、undefined类型、null 类型
  • ”+“进行字符串拼接,若任意一个操作数为字符串类型,则结果得到的就是两个操作数拼起来的字符串

转换成数值类型

  • Number(数据) 方法
  • 适用于任何数据类型
  • 字符串 类型
    • 若为纯数字字符串,则转成对应数字;
    • 若为空字符串空白字符串,则转成 0;
    • 其他情况,转成 NaN
  • undefined 类型,转换为NaN
  • null 类型,转换为 0

将字符串转换成数值类型

  • parseInt() 方法,字符串转整数方法
  • 作用
    1. 将浮点数转成整数
    2. 将字符串转成整数,在开头为数字的情况下才有效
  • parseFloat() 方法:将字符串转浮点数方法

转换成布尔类型

  • Boolean(数据) 方法
  • 可用于任何数据类型
  • 转换为 false: NaN、0、”“ 空字符串、undefined、null

操作符

仅记录不熟悉的部分

算术运算符

  • NaN 参与的运算:得到的结果都是NaN
  • Infinity 参与的运算,得到的结果视情况而定。当无法确定是什么数时,结果为 NaN,如 Infinity % 5 无法确定结果是 0 到 4 中的哪一个,最终结果为 NaN
  • 以数字开头的字符串参加运算时
    • 当为加法时,+ 号作为连字符
    • 在其他算数符时,计算机会自动使用 Number() 方法(隐式转换),将其他数据类型转换成数字类型,再进行运算

比较运算符

  • 特殊值参与比较运算(===在值相等的情况下,数据类型相等才为true)
    • NaN 参与的比较,!= 和 !== 结果为 true,其他均为 false
    • Infinity 参与的比较,视情况而定
    • 其他数据类型与数字 参与的比较(排除字符串与字符串比较)
      • 将其他数据隐式转换成数字,再进行比较
      • null 虽然隐式转换为 0 ,但 null 与 0 比较时,0 == null 为false,0 >= null 和 0 <= null 为true
      • null == undefined 为 true
    • 字符串与字符串 比较
      • 比较两个字符串的 Unicode 编码顺序
      • 0-9 < A-Z < a-z
      • 不关心两个字符串的长度,从第一个字符开始比较,若能够确定结果则停止比较下去;否则比较下一个字符,以此类推

逻辑运算符

  • && ,都真才真,有假就假
  • || ,有真就真,都假才假
  • !
  • 其他类型数据参与运算
    • 逻辑与 a&&b, 若a隐式转换(Boolean())的结果为false,则结果为a;否则,结果为b
    • 逻辑或 a||b,若a隐式转换(Boolean())的结果为true,则结果为a;否则,结果为b
    • 非运算的结果只能是 true 或 false
  • 综合运算顺序: !、 &&、 ||

标签:console,JavaScript,数据类型,类型,初学,typeof,字符串,null
来源: https://blog.csdn.net/m0_44994424/article/details/113789987

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有