美文网首页Web前端之路让前端飞
Javascript中的数据类型、值和变量

Javascript中的数据类型、值和变量

作者: softbone | 来源:发表于2017-08-26 07:02 被阅读17次

JS类型

原始类型

数字 字符串 布尔值 null undefined

对象类型

Object
(这些都是Object的子类)Function Array Date Math
RegExp Number String Boolean

NaN Infinity

Js中运算上溢和下溢(计算结果无限接近于0,但比JS能表示的最小值还小时发生的一种情景)都不报错会得到无穷大Infinity和0。负数下溢得到-0.
0/0 结果为NaN 4/0 为Infinity
判断是不是NaN x!=x 若为true则x为NaN 或者用isNaN(x) Infinity和
-Infinity不是NaN

布尔值

null undefined 0 -0 NaN ''" " "(空字符串和只有空格的字符串) 以上都会被转换为false。(但是""和" "的长度是不一样的)" "==false; //为true " ".length=1
其他所有值,空数组,空对象等都会被转换为true
严格相等运算符 === 不进行类型转换 必须要类型和值都相等才为true
null == undefined //true
null === undefined //false
!!null 隐式类型转换

包装对象

数字 字符串 布尔值 的包装对象分别为Number String Boolean
存取字符串、数字或布尔值的属性时创建的临时对象称为包装对象,临时对象在使用完之后会马上销毁。当下次再存取字符串等的属性时又会重新新建一个临时对象。
包装对象可以显示的创建
var s=new String('xxx');

原始值和对象引用

原始值是不能改变的,字符串是返回的新的字符串,原字符串是没改变的。
对象的值是可以修改的。
两个单独的对象或数组永不相等
var a=[]; b=[];
a==b ; //false
a===b; //false
a=b;
a===b//true 对象数组的比较其实是引用变量的比较,当两个引用变量都指向同一个数组或对象时则相等

变量声明

var x; //声明一个变量但是没初始化
var a=1;//初始化变量
给未声明的变量直接赋值,在严格模式下报错,在非严格模式下,会给全局对象创建一个同名的属性。
b=1;
window.b //1

作用域

全局作用域和函数作用域 (ES6中有块级作用域)
在函数内声明的变量只在函数内有定义,在局部作用域里局部变量会覆盖重名的全局变量。

函数作用域的声明提前

在函数作用域内声明的所有变量在函数体内都是可见的。这意味着变量在声明之前就已经可用了
function f(){
console.log(a); //输出undefined
var a=1;
}
虽然声明会提前,但是变量的赋值还是在原赋值语句处。

相关文章

  • JavaScript语言中值的类型

    1. 基础数据类型和引用数据类型 JavaScript中的变量是没有类型的,只有值才有,变量可以随时持有任何类型的...

  • JavaScript 变量类型

    变量类型 JavaScript 中的变量类型分为值类型(又称为简单类型、基本数据类型)以及引用类型。 【值类型】:...

  • Javascript 中的变量

    本章内容 通过变量使用原始值和引用值; javascript 变量是松散型的,变量的值和数据类型在脚本生命期内可以...

  • 基础数据类型和原生类型

    基础数据类型 在 JavaScript 中,变量没有类型 -- 值才有类型。变量可以在任何时候,持有任何值。 nu...

  • JavaScript快速入门02-数据类型

    JavaScript基础语法02 数据类型 在js中的变量可以保存多种数据类型 :数值、字符串值、布尔值、空值、未...

  • Javascript 学习笔记

    JavaScript 中的变量类型JavaScript 中变量可以存储两种类型的值,即原始值和引用值。5种原始类型...

  • Javascript中的数据类型、值和变量

    JS类型 原始类型 数字 字符串 布尔值 null undefined 对象类型 Object(这些都是Objec...

  • Day17:web前端开发面试题

    1.JavaScript 数据类型有哪些? JavaScript 变量能够保存多种数据类型:数值、字符串值、数组、...

  • 变量

    JavaScript 变量JavaScript 变量是存储数据值的容器。 在本例中,x、y 和 z 是变量: 实例...

  • es5--语法专题笔记

    数据类型的转换 JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。 上面代码中,变量...

网友评论

    本文标题:Javascript中的数据类型、值和变量

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