JavaScript【七】JavaScript中的内置顶层函数

简介: JavaScript【七】JavaScript中的内置顶层函数

🌟前言

哈喽小伙伴们,本文将收录在JavaScript【前端童子功】这个专栏里;这个专栏里边会收录一些JavaScript的基础知识和项目实战;希望大家可以多多支持,你们的支持就是我创作的动力;让我们一起来看看吧🤘

🌟内置

ECMAscript自带的函数,ECMAscript 自带的函数,ECMAscript将我们常用的一些功能封装起来,用户不需要知道其实现原理而直接使用。

🌟顶层

指函数的作用范围,作用范围为全局

🌟内置顶层函数

🌟 Number()

Number() —— 任意类型数据转化为数字

  • 如果是布尔值,true为1,false为0
  • 如果是数值,转换为本身,会将无意义的后导零与前导零去掉
  • 如果为null,转换为0
  • 如果是undefined,转换为NaN not a number
  • 如果是字符串,
  • 如果字符串中只有数字,则转换为数字(10进制)会忽略前导0和后导0
  • 如果是规范的浮点数,则转换为浮点数 会忽略前导0和后导0
  • 如果是空字符串,转换为0
  • 如果是其它值,转换为NaN

案例:用户输入两个数字及运算符进行计算

// 由于prompt方法获取到的数据均为字符串,所以需要转化为数字
var num1 = Number(prompt("请输入第一个数字:"))
var operator = prompt("请输入运算符")
var num2 = Number(prompt("请输入第二个数字:"))
switch (operator) {
    case '+':
        alert("运算结果为:"+ (num1 + num2))
        break;
    case '-':
        alert("运算结果为:"+ (num1 - num2))
        break;
    // ...
    default:
        alert("请输入正确的运算符 + - * / %")
        break;
  }

🌟 parseInt()

parseInt() —— 任意类型数据转化为整数

  • 如果一个字符串中只包含数字,转换为十进制数
  • 如果有多个空格,会先找到第一个非空的值进行转换,直到非数值时结束
  • 如果第一个值不是以数字-数字空格开头的,转换为NaN
  • 有两个参数时,第一个参数表示要转换的值,第二个参数表示几进制,返回值是一个十进制的数字

注意第一个参数从最高位开始计算,只要有一位数可以识别为第二个参数传入的进制,则可以实现转化

注意第二个参数可以传入的值为 2-36

🌟parseFloat()

parseFloat() —— 任意类型数据转化为浮点数(小数)

  • 只有一个小数点起作用,其它无效
  • 如果字符串是一个有效的整数,他返回的是整数,不会返回浮点数。

🌟String()

String() —— 任意类型数据转化为字符串

  • 如果是null,undefined,转换为字符串 “null” “undefined”
  • 如果是数值类型,转换为本身的字符串,123 转换为 “123”
  • 如果是布尔类型,true为"true" false为"false"

🌟Boolean()

Boolean() —— 任意类型数据转化为布尔值

  • 转换结果是假:“”(空串),null,undefined,0,false,NaN
  • 其它都为真

🌟 isNaN()

isNaN(); —— 判断一个数据能否转换为数值

  • 如果能转换成数值返回false,不能返回为true
  • 如果isNaN(x)返回false,那么x在任何算数表达式中都不会使表达式等于NaN;如果返回true,x会使所有算数表达式返回NaN
isNaN(NaN);         // true
isNaN(null);        // false   
isNaN(undefined);   // true
isNaN("");        // false

🌟eval()

eval(); —— 将传入的字符串当做 JavaScript 代码进行执行

var str = "(1+2)*3";
eval(str);     // 9
  • 避免在不必要的情况下使用 eval
  • 需要解析,速度慢
  • 安全性差:所执行的字符串容易被操控修改从而收到攻击

🌟Number扩展

Number.isFinite() 与 Number.isNaN()

Number.isFinite()用来检查一个值是否为有限的。

Number.isNaN()用来检查一个值是否是NaN。

console.log(isFinite('15'));    // true
console.log(isFinite(true));    // true
console.log(Number.isFinite('15')); // false
console.log(Number.isFinite(true)); // false
console.log(isNaN('true'))        // true
console.log(Number.isNaN('true')) // false

Number.isInteger() 用来判断一个值是否为整数。

需要注意的是,在JavaScript内部,整数和浮点数是同样的储存方法,所以3和3.0被视为同一个值。

console.log(Number.isInteger(25))   // true
console.log(Number.isInteger(25.0)) // true
console.log(Number.isInteger(25.1)) // false
console.log(Number.isInteger("15")) // false
console.log(Number.isInteger(true)) // false

🌟写在最后

更多JavaScript知识以及API请大家持续关注,尽请期待。各位小伙伴让我们 let’s be prepared at all times!


目录
相关文章
|
JavaScript 前端开发
Javascript知识【jQuery:操作内容】
Javascript知识【jQuery:操作内容】
|
2月前
|
存储 前端开发 JavaScript
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
本文介绍了JavaScript变量的声明和使用、标识符的命名规则、如何获取和操作HTML元素,以及JavaScript的鼠标事件处理,通过示例代码展示了这些基础知识点在实际开发中的应用。
41 2
前端基础(二)_JavaScript变量、JavaScript标识符、JavaScript获取元素、JavaScript的鼠标事件
|
前端开发 JavaScript
【JavaScript源代码】JavaScript实现简单的轮播图效果
【JavaScript源代码】JavaScript实现简单的轮播图效果
|
JavaScript 前端开发
|
JavaScript 前端开发
|
JavaScript 前端开发
|
JavaScript 前端开发
JavaScirpt基础JavaScript 标签
JavaScirpt基础JavaScript 标签
81 0
|
JavaScript 前端开发
【基础篇】JavaScript 函数介绍
【基础篇】JavaScript 函数介绍
125 0
【基础篇】JavaScript 函数介绍
|
JavaScript 前端开发 网络架构
JavaScript 基础(二):函数
在本文中,将专注于在 JavaScript 中定义自己的自定义函数,介绍函数的定义方式、声明、作用域及参数定义。
141 0
|
缓存 JavaScript 前端开发
你需要知道的 JavaScript 原生函数的内容
你需要知道的 JavaScript 原生函数的内容