美文网首页
类型转换

类型转换

作者: lyp82nkl | 来源:发表于2019-06-13 01:28 被阅读0次

任意类型转字符串

  1. String(x)
  • 这是一个全局函数,可以在全局调用:window.String()


  1. x.toString()


  • null和undefined不具有toString()方法
  1. x + ''(加号如果发现左右任意一边有字符串,他就会把另一边也变为字符串)


关于1+’1’为什么等于字符串’11’的解释:
加号运算,由于加号只能加相同类型的东西,所以他会尝试改变这个类型,优先会尝试把他变成字符串就相当于:(1).toString() +’1’,所以就是’11’

任意类型转数字
  • Number(x)

  • parseInt(x, 10)

  • parseFloat(x)

  • x - 0

  • +x

任意类型转布尔
  • Boolean(x)

  • !!x(取反再取反,也就是负负得正,等于他本身的布尔值了)

  • js里面只有五个falsy(falsy是在 Boolean 上下文中认定可转换为false的值)值:

false, 0, NaN, null, undefined, ’’(空字符串)

除了五个falsey值外,所有的object都是true,其他的都是true

内存图

  • 外存:断电也不会清空内容,速度慢。最快的外存SSD,市面常见的是机械硬盘(易坏)

  • 内存:1G、2G~16G

  • 特点:一旦断电,东西全空;速度快

  • Js工作分配内存,主要划分为两个大区:代码区(左边),数据区(右边);
    数据区又分为stack栈内存和heap堆内存。


数据区里的值:

  1. 简单(number/string/undefined/symbal/null/bolean) 存在stack栈内存里

  2. 复杂(Object类型) 存heap地址存入stack

简单类型又叫基本类型;复杂类型又叫引用类型。

引用:


注意:
1. 等于号只做一件事情,就是把右边的东西存到左边来;
2. Heap里面的内容只能添加不能直接更改

浅拷贝和深拷贝

深拷贝

var a = 1;

var b =a;

b = 2;

a = 1
  • 上面的代码当变量b变得时候不会影响a,这就属于深拷贝

基本类型的赋值就是深拷贝

浅拷贝

var a= {
name: ‘a’
}
var b = a;
b.name = ‘b’;
a.name = ? //结果也是’b’

b变导致a变这就属于浅拷贝

相关文章

  • C语言类型转换

    类型转换的方式 自动类型转换1.运算转换(规则:会把小类型转换为大类型) 2.赋值转换 强制类型转换格式:(类型)...

  • 引用类型转换

    向上类型转换(自动类型转换),是小类型到大类型的转换向下类型转换(强制类型装换),是大类型到小类型的转换在强制类型...

  • 第三章 JavaScript中的数据间类型的转换

    数据的类型转换分为强制类型转换和非强制类型转换,强制类型转换也可以称为显示转换,非强制类型转换也可以称为隐式转换。...

  • 笔记2018-08-28

    类型转换 自动类型转换运算转换(编译器会自动把小类型转换为大类型) 赋值转换(将等号右边的类型转换为等号左边的类型...

  • 四、SQL函数④(其他函数)

    类型转换 隐式转换:数据库系统自动将字符串类型转换为整数类型显式转换:使用类型转换函数转换。使用类型转换函数不仅可...

  • 4_类型转换

    关键词:类型之间的转换、强制类型转换、隐式类型转换 1. 类型之间的转换 C语言中的数据类型可以进行转换,转换方式...

  • 学习记录

    类型转换as?类型转换,转换成功,返回一个可选类型,转换不成功返回nilas!类型转换,转换失败回报运行错误备注:...

  • 回顾Date.0402(类型转换、运算)

    类型转换 隐式转换 显式转换 转换为Boolean类型:Boolean(xxx) ; !!xxx 数字类型转换为布...

  • JavaScript的强制类型转换

    强制类型转换 将javascript的值从一种类型转换为另一种类型的值——>类型转换隐式类型转换——>强制类型转换...

  • 自动转换函数

    内置类型间转换 自定义类型的类型转换 使用构造函数进行类型转换 例如 自动转换函数(运算符转换) 例子

网友评论

      本文标题:类型转换

      本文链接:https://www.haomeiwen.com/subject/tyldfctx.html