JavaScript特性复习(一)

1:数据类型

  • 7种数据类型(6种基本数据类型,1种引用数据类型)
  • Undefined

只有一个值:undefined
未初始化的变量会保存特殊值>>>: undefined
注意!!!:未声明的变量执行typeod操作符同样返回undefined值

         var a
        console.log(a)//undefined
        console.log(typeof b)//undefined
  • Null

只有一个值:null(表示空对象指针)
因此使用typeof检测null会返回"object",undefined也派生自null,()比较时返回true,(=)比较返回false

       var car = null
        console.log(typeof car) //object
        console.log(typeof undefined) //undefined
        console.log(null == undefined) //true
        console.log(null === undefined) //false

== 代表相同, =代表严格相同,进行双等号比较时候: 先检查两个操作数数据类型,如果相同, 则进行=比较, 如果不同, 则愿意为你进行一次类型转换, 转换成相同类型后再进行比较, 而===比较时, 如果类型不同,直接就是false.

详细可看:https://zhidao.baidu.com/question/344570703.html

如果一个变量将来要保存一个对象,最好将该变量初始化为null而不是其他值。

  • Boolean

有两个字面值:true / false,

  • Number

包括了整数,浮点数,及NaN

NaN 是一个特殊数值,用于指示某个值不是数字
两个特点:
一:涉及NaN的操作都会返回NaN,
二:NaN与任何值都不相同,包括NaN本身,

  • String

js中字符串不可变,要改变某个变量保存的字符串,首先要销毁原来字符串,然后再用另一个包含新值的字符串填充该变量

  • Object

可创建对象,Object类型是所有它实例的基础,所有实例都具有Object类型下列的属性和方法。

Constructor : 一个指针,指向构造函数
hasOwnProperty(propertyname): 检查给定属性好,在当前这种实例中(不是实例的原型对象中)是否存在,
isPrototypeOf(object): 用于检查传入的对象是否是另一个对象的原型
toString():返回对象的字符串表示
valueOf(): 同上


2:变量

  • js中变量是松散类型,所谓松散类型就是可以用来保存任何类型的数据。变量只充当于一个保存值的占位符
  • 因此可以在修改变量值的同时,修改值的类型,但不推荐
var m=" Hi "
m=100  //有效,但不推荐,
  • 变量可重复声明,后面值的替代前面的值(var可以,let不行)
var a=1
var a=2
console.log(a)//2
let b=1
let b=2//Uncaught SyntaxError: Identifier 'cat' has already been declared
console.log(b)

3:变量提升

将当前作用域的所有变量的声明提升到程序的顶部

  • 如果直接使用未声明的变量的话会报错 Uncaught ReferenceError
 console.log(a) // Uncaught ReferenceError: a is not defined
  • 如果使用了后面声明的变量的话,不报错,输出undefined
 console.log(a)//undefined
  var a = 9

相当于

var a
console.log(a)
a = 9
  • 所谓变量提升,严格来说:声明提升,初始化未提升。
    ,所以输出undefined

  • let,const也存在变量提升,但存在暂时性死去,不可在未声明前使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值