发表于: 2017-03-28 22:12:45
1 551
今天完成的事情:
完成任务15。开始做js任务1,看了JavaScript的起源,在HTML中怎样使用JavaScript,语法,数据类型。
明天计划的事情:
看条件语句、函数、变量和数组相关资料,开始做任务1。
遇到的问题:做任务15的时候设置媒体查询发现布局有问题,因为栅格布局使用了浮动,后面添加了一个空的div,给它设置clear:both清楚浮动。
收获:
<script>元素需要注意的几个属性:
1、在包含外部JavaScript时,必须将src属性设置为指向相应文件的url。而这个文件既可以是与包含它的页面位于同一个服务器上的文件,也可以是其他任何域中的文件。
2、所有<script>元素都会按照它们在页面中出现的先后顺序被解析。在不使用defer和async属性的情况下,只有在解析完前面<script>元素中的代码后,才会开始解析在后面<script>的代码。
3、由于浏览器会解析不使用defer属性的<script>元素中的代码,然后再解析后面的内容,所以一般应该先把<script>元素放在页面最后,即主要内容后面,即<body>前面。
4、使用defer属性可以让脚本在文档中完全呈现之后再执行。延迟脚本总是按照指定它们的顺序执行。
5、使用async属性可以表示当前脚本不必等其他脚本,也不必阻塞文档呈现。不能保证异步脚本按照它们在页面中出现的顺序执行。
数据类型:
1、typeof操作符:检测变量的数据类型。Typeof null会返回“object”。
2、Undefined:
Var a; //声明 未经初始化的变量默认为undefined
Var a=‘ABC’ //初始化
3、null:派生自undefined,所以alert(null == undefined)返回为ture。只要意在保存对象的变量还没有真正保存对象,就该明确的让该变量保存null值。
4、Boolean类型:
函数Boolean():可以对任何数据类型的值调用Boolean()函数,返回true或者false。
5、Number类型:
数值转换函数:
1、Number():a.如果是Boolean值,true和false分别被转换为1和0。
b.如果是数字值,只是简单的传入和返回。
c.如果是null值返回0。
d.如果是undefined返回NaN。
e.如果是字符串,则遵循以下规则:
如果字符串只包含数字(包括前面带正号和负号的情况),则将其转换为十进制数值。如‘1’转换 为1,‘123’转换为123,‘011’转换为11(前导的0会被忽略)。
如果字符串中包含有效的浮点格式,如'1.1',则将其转换为对应的浮点数值(会忽略前导零)。
如果字符串中包含有效的十六进制格式,如‘0xf’,则将其转换为相同大小的十进制整数值。
如果字符串是空的(不包含任何字符),将其转换为0。
如果字符串包含上述格式之外的字符,则将其转换为NaN。
2、parseInt():看其是否符合数值模式。会忽略字符串前面的空格,直到找到第一个非空字符。如果第一个字符不是数字字符或负号,parseInt()就会返回NaN;也就是说,用parseInt()转换空字符串会返回NaN(number()对空字符返回0)。
如果第一个字符是数字字符,paresInt()会继续解析第二个字符,直到解析完所有后续字符或者遇到了一个非数字字符。如果字符串以‘0x’开头且后跟数字字符,会将其当做十六进制;如果字符串以‘0’开头且后跟数字字符,则将其当作一个八进制数来解析;‘22.5’会被转换为22,因为小数点并不是有效的数字字符。
3、parseFloat():与parseInt()函数类似,parseFloat()也是从第一个字符(位置0)开始解析每个字符。而且也是一直解析到字符串末尾,或者解析到遇见一个无效的浮点数字字符为止。也就是说字符串中的第一个小数点是有效的,而第二个小数点就是无效的,因此它后面的字符串将被忽略。parseFloat始终忽略前导0,导致十六进制格式的字符串始终被转换成0;如果字符串包含一个可解析为整数的数,返回为整数。
6、string类型:
转换为字符串:
1、toString()方法:每个数据类型都有toString()方法,除了null和undefined没有这个方法。在调用数值的toString()方法时,可以传递一个参数:输出数值的基数。默认情况下以十进制返回数值的字符串表示。
Var num=10;
Alert(num.toString()); //返回十进制”10”;
Alert(num.toString(2)); //返回二进制“1010”
Alert(num.toString(8)); //返回八进制“12”
Alert(num.toString(10)); //返回十进制“10”
Alert(num.toString(16)); //返回十六进制“a”
2、String():转型函数,可以将任何类型的值转换为字符串,如果值有toString()方法,则调用该方法并返回相应的结果。如果值为null,则返回”null”,如果值为undefined,则返回”undefined”。
评论