发表于: 2018-10-12 23:23:35
1 571
今天完成的事情:看了组件化,学习js,
明天的计划:写完任务十四十五进入js。
遇到的问题:暂无
今天的收获:
特性:js的变量可以保存任何类型的数据;
- 如果只是声明而没有赋值,该变量的类型为-undefined;- var massage;
- 初始化变量不会标记为初始化的类型,比如初始值是字符串,后面再给赋值也可以赋数字;数字会覆盖字符串
var message = “hi”;
message= 100;
- 函数中定义var变量只能是局部变量,函数退出变量就访问不到,除非! 省略var操作符,就创建了一个全局变量,但是要调用这个函数变量才能被定义! 最好不用省略var操作符来定义全局变量
- 一个var操作符可以定义多个变量,用逗号分隔;
数据类型
- undefined 类型表示不存在定义,声明变量但没有初始化,这个变量的值就是undefined; 注意:在任何一个引用变量值设置为undefined都是错误的, 用法:
- 变量被声明但是没有被赋值会报undefined;
- 调用函数应该提供的参数没有提供,这个参数就undefined;
function age1(x) {
console.log(x) 需要用console
}
age1();
- 对象没有赋值的属性,该属性的值为undefined;
var a = new Object();
a.p; console.log(a.p);
- 函数没有返回值,默认返回undefined;
- null 类型,表示一个值被定义了,定义为空值; 使用场景为 定义变量准备在将来用于保存对象;
所以引用值可以是null而不会是undefined;
- undefined和null的区别:
- js诞生的时候只设置了null作为“无”的值。最初的设计是null是表示一个“无”的对象,转为数值时为0; | undefined表示“无”的原始值,转为数值时为NaN;
- undefined和null在if语句中都会被自动转为false;相等运算符直接报告两者相等;
- null表示没有对象 | undefined表示缺少值,此处应该有一个值;http://www.ruanyifeng.com/blog/2014/03/undefined-vs-null.html
红宝书上说引入undefined就是为了正式的区分空对象指针与未经初始化的变量,变量设置为null就是空对象指针,没有设置就是未经初始化!
字面量是什么?
在js中可以使用各种字面量,这些字面量是脚本中按字面的意思给出的固定的值(字面量是常亮,值是固定的,比如false,3.1415,thisIsStringOfHelloworld以及引出查找字面量问题的undefined),而不是变量。
数组字面量Array literals
数组字面值是一个封闭在方括号中的包含有零个或多个表达式的列表,每个表达式代表数组的一个元素。使用数组字面值创建一个数组,数组会以指定的值作为元素进行初始化,数组的长度就是元素的个数;
布尔字面量 Boolean literals
true和false
整数
各进制的表现形式
浮点数字面量
十进制整数,可以带正负号
小数点
小数部分
指数部分
对象字面量
封闭在花括号中的一个对象的零个活多个‘属性名-值’的元素列表
评论