- 变量类型和计算(1)
- 变量类型和计算(2)
- JS中使用typeof能得到的类型
- 何时使用===和==
- JS中的内置函数
- JS按照存储方式区分变量类型
- 变量类型和计算(3)-理解JSON
变量类型和计算(1)
- JS中使用typeof能得到的哪些类型
- 何时使用
===何时使用== - JS中有哪些内置函数
- JS变量按照
存储方式区分为哪些类型,并描述其特点 - 如何理解
JSON
值类型
- 从内存来说值类型是把每一个值存储在变量类型的每一个位置
var a = 100;var b = a;a = 200console.log(b);//100
引用类型
- 把a赋值*-成一个对象,a的位置是通过指针指向一个位置
- 把b赋值成a,其实是定义一个b,b的指针指向了那个对象位置
- 也就是有两份
age:20的对象 - 对象的引用,就相当于复写一个对象,这两个对象之间相互独立
- 引用类型:对象、数组、函数
var a ={age:20};var b = a;b.age = 21;console.log(a.age); //21
typeof undefined //undefinedtypeof 'abc' // Stringtypeof 123 //numbertypeof true //booleantypeof {} //objecttypeof [] //objecttypeof null //objecttypeof console.log //funciton
变量计算-强制类型转换
var a = 100 + 10;//110var b = 100 + '10';//10010
100 == '100' //true0 == '' //truenull == undefined //true
var a = true;if(a){ //....}var b = 100;if (b) { //....}var c = '';if (c) { //...}
console.log(10 && 0); //0console.log('' || 'abc'); //abcconsole.log(!window.acb); //true//判断一个变量会被当做true还是falsevar a = 100;console.log(!!a);//true
变量类型和计算(2)
JS中使用typeof能得到的类型
//问题:JS中使用typeof能得到哪些类型typeof undefined //undefinedtypeof 'abc' // Stringtypeof 123 //numbertypeof true //booleantypeof {} //objecttypeof [] //objecttypeof null //objecttypeof console.log //funciton
- 总结来说typeof可以得到
undefined、String、number、boolean
可以区分值类型,但对于引用类型无法很细的区分,只能区分函数。 - 尤其是
typeof null object
它是一个引用类型
何时使用===和==
//问题:何时使用===何时使用==if (obj.a == null) { //这里相当于 obj.a === null || obj.a === undefined,简写形式 //这是jquery源码中推荐的写法}
JS中的内置函数
//问题:JS中有哪些内置函数----数据封装类对象//作为构造函数的作用ObjectArrayBooleanNumberStringFunctionDateRegExpError
JS按照存储方式区分变量类型
//JS 变量按照存储方式区分为哪些类型,并描述其特点//值类型var a = 10;var b = a;a = 11;console.log(b); // 10//引用类型var obj1 = {x:100}var obj2 = obj1;obj1.x = 200;console.log(obj2.x); // 200
- ES中,引用类型是一种数据结构,用于将数据和功能组织在一起
变量类型和计算(3)-理解JSON
//问题:如何理解JSON//JSON只不过是一个JS对象//JSON也是一个数据格式JSON.stringify({a:10,b:20});JSON.parse('{"a":10."b":20}')