zoukankan      html  css  js  c++  java
  • 数据类型 原始类型的方法


    数据类型 原始类型的方法
    在 JavaScript 中有 7 种原始类型:string,number,bigint,boolean,symbol,null 和 undefined。

    当作对象的原始类型
    以下是 JavaScript 创建者面临的悖论:

    人们可能想对诸如字符串或数字之类的原始类型执行很多操作。最好将它们作为方法来访问。
    原始类型必须尽可能的简单轻量。
    而解决方案看起来多少有点尴尬,如下:

    原始类型仍然是原始的。与预期相同,提供单个值
    JavaScript 允许访问字符串,数字,布尔值和 symbol 的方法和属性。
    为了使它们起作用,创建了提供额外功能的特殊“对象包装器”,使用后即被销毁。
    “对象包装器”对于每种原始类型都是不同的,它们被称为 String、Number、Boolean 和 Symbol。因此,它们提供了不同的方法。

    例如,字符串方法 str.toUpperCase() 返回一个大写化处理的字符串。

    用法演示如下:

    let str = "Hello";

    alert( str.toUpperCase() ); // HELLO
    很简单,对吧?以下是 str.toUpperCase() 中实际发生的情况:

    字符串 str 是一个原始值。因此,在访问其属性时,会创建一个包含字符串字面值的特殊对象,并且具有有用的方法,例如 toUpperCase()。
    该方法运行并返回一个新的字符串(由 alert 显示)。
    特殊对象被销毁,只留下原始值 str。

    数字有其自己的方法,例如,toFixed(n) 将数字舍入到给定的精度:

    let n = 1.23456;

    alert( n.toFixed(2) ); // 1.23

    另一方面,调用不带 new(关键字)的 String/Number/Boolean 函数是完全理智和有用的。它们将一个值转换为相应的类型:转成字符串、数字或布尔值(原始类型)。

    例如,下面完全是有效的:

    let num = Number("123"); // 将字符串转成数字

  • 相关阅读:
    [转]Hello ActiveMQ
    Access中合并两张表为一张表
    infragistics ultraGrid单元格、行只读
    (转)c#中对"Crossthread operation not valid"错误的处理办法
    [LintCode] String Homomorphism Review
    [LintCode] Longest Increasing Continuous Subsequence Review
    [LintCode] Longest Increasing Continuous subsequence II Review
    [LintCode] Coins in a Line II Review
    标准的SQL的解析顺序
    SQLServer 存储过程 SET NOCOUNT { ON | OFF } 的使用(转载)
  • 原文地址:https://www.cnblogs.com/perfectdata/p/15471871.html
Copyright © 2011-2022 走看看