自学javascript笔记_自用_解析W3school的代码_JS对象
2016-02-18 21:51
489 查看
我一直很好奇这个基于Prototype的语言的整个结构,如果只学表面的,那只能是盲人摸象了。但毕竟是初学者,想抓住主要结构,还是需要学习更多的表面的。
这里是对象的for in循环,在对象的循环中,可以把对象当成是一个数组,是一个结构体的数组。数组的长度是对象的属性个数。这样就可以完全的通过循环遍历一个对象的每一个属性的值,而且不要用到每一个属性的名字。(渐渐的不要再把JavaScript对象当做类了)很神奇。
JavaScript的数字跟其他的语言不同。首先它只有一个类型,不分整型,长整型,浮点型什么的。(JavaScript 不是类型语言)
整数(不使用小数点或指数计数法)最多为 15 位。//多次测试var x=123456789012345678901.。。等,结果都不一样,我也不理解。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确 var a=0.1.var b=0.2.相加的话是等于0.3000000000001后面可能多个数字?!~我也不理解为啥,但是乘以10再除以10就会消除这个问题。
y此时是八进制数,z是十六进制数。好像没提到有二进制的。应该有,因为后面有位运算。数字对象有很多属性和方法。我目前只用过nan属性,判断值是不是数字类型的。还有很多,暂时我还不理解。数字对象的方法属性在这里:http://www.w3school.com.cn/jsref/jsref_obj_number.asp
字符串之前用了好多了,基本用法当然也要参考手册了,很多有意思的方法和属性可以直接使用还真是棒棒的。比如:
字符串长度:x.length
字符串添加样式:x.big() 大号字体;x.small()小号字体;x.bold()加粗;x.italics()斜体;x.blink()一闪一闪的,不过我在几个浏览器用了都不能够正常显示。
还有加颜色,划线,加超链接,上标,下标,改变字形等等等等。。。这些在html里都是要加各种标签的,现在可以在JavaScript里用方法来实现,可以通过id找到要改变的元素。
另外还有字符串的各种匹配索引方法都可以直接使用的,记得查找参考手册啦!http://www.w3school.com.cn/jsref/jsref_obj_string.asp
日期对象的方法属性真的是方便,我在C++里从来是束手无策的,当然主要是因为我是菜鸟啦。
在script标签里直接使用date()方法:document.write(Date()),可以直接显示完整时间的:
我此时显示的是:Thu Feb 18 2016 19:57:47 GMT+0800
x.setTime();//从1970年到此时此刻过了多少毫秒数。不知道用处大不大。我写到此时此刻:从 1970/01/01 至今已过去 1455796815728 毫秒
x.setFullYear(xxxx,xx,xx) 设置具体的日期。然后在用这个日期调用getTime函数,就会计算两者直接的毫秒数啦。
我在想怎么在文章里直接可以看到呢?
在onload上执行这个函数,只要页面准备完成就开始了显示钟表。
另外:1,月份是从0定义到11的,所以5指代六月,11指代12月。
2,日期对象的变量是直接可以比较大小的
数组
<!DOCTYPE html> <html> <body> <p>点击下面的按钮,循环遍历对象 "person" 的属性。</p> <button onclick="myFunction()">点击这里</button> <p id="demo"></p> <script> function myFunction() { var x; var txt=""; var person={fname:"Bill",lname:"Gates",age:56}; for (x in person) { txt=txt + person[x]; } document.getElementById("demo").innerHTML=txt; } </script> </body> </html>
这里是对象的for in循环,在对象的循环中,可以把对象当成是一个数组,是一个结构体的数组。数组的长度是对象的属性个数。这样就可以完全的通过循环遍历一个对象的每一个属性的值,而且不要用到每一个属性的名字。(渐渐的不要再把JavaScript对象当做类了)很神奇。
JavaScript的数字跟其他的语言不同。首先它只有一个类型,不分整型,长整型,浮点型什么的。(JavaScript 不是类型语言)
整数(不使用小数点或指数计数法)最多为 15 位。//多次测试var x=123456789012345678901.。。等,结果都不一样,我也不理解。
小数的最大位数是 17,但是浮点运算并不总是 100% 准确 var a=0.1.var b=0.2.相加的话是等于0.3000000000001后面可能多个数字?!~我也不理解为啥,但是乘以10再除以10就会消除这个问题。
var y=0377; var z=0xFF;
y此时是八进制数,z是十六进制数。好像没提到有二进制的。应该有,因为后面有位运算。数字对象有很多属性和方法。我目前只用过nan属性,判断值是不是数字类型的。还有很多,暂时我还不理解。数字对象的方法属性在这里:http://www.w3school.com.cn/jsref/jsref_obj_number.asp
字符串之前用了好多了,基本用法当然也要参考手册了,很多有意思的方法和属性可以直接使用还真是棒棒的。比如:
字符串长度:x.length
字符串添加样式:x.big() 大号字体;x.small()小号字体;x.bold()加粗;x.italics()斜体;x.blink()一闪一闪的,不过我在几个浏览器用了都不能够正常显示。
还有加颜色,划线,加超链接,上标,下标,改变字形等等等等。。。这些在html里都是要加各种标签的,现在可以在JavaScript里用方法来实现,可以通过id找到要改变的元素。
另外还有字符串的各种匹配索引方法都可以直接使用的,记得查找参考手册啦!http://www.w3school.com.cn/jsref/jsref_obj_string.asp
日期对象的方法属性真的是方便,我在C++里从来是束手无策的,当然主要是因为我是菜鸟啦。
在script标签里直接使用date()方法:document.write(Date()),可以直接显示完整时间的:
我此时显示的是:Thu Feb 18 2016 19:57:47 GMT+0800
x.setTime();//从1970年到此时此刻过了多少毫秒数。不知道用处大不大。我写到此时此刻:从 1970/01/01 至今已过去 1455796815728 毫秒
x.setFullYear(xxxx,xx,xx) 设置具体的日期。然后在用这个日期调用getTime函数,就会计算两者直接的毫秒数啦。
我在想怎么在文章里直接可以看到呢?
<html> <head> <script type="text/javascript"> function startTime() { var today=new Date() var h=today.getHours() var m=today.getMinutes() var s=today.getSeconds() // add a zero in front of numbers<10 m=checkTime(m) s=checkTime(s) document.getElementById('txt').innerHTML=h+":"+m+":"+s t=setTimeout('startTime()',500) } function checkTime(i) { if (i<10) {i="0" + i} return i } </script> </head> <body onload="startTime()"> <div id="txt"></div> </body> </html>这里要说明的是这里的函数都是提前那什么的,不想C语言是按顺序执行的,然后使用前必须要声明或者直接定义。这里的话没有这样的,所有的函数都是在页面进入之前已经加载好了吧(加载这个词用的不当啊)。然后上面看到有三个Date方法和一个
setTimeout('startTime()',500)这句的意思是每500毫秒调用一次startTime函数,这样就是一个简单的钟表。要是定义成2000,那就是每两秒刷新一次钟表的时间啦。
在onload上执行这个函数,只要页面准备完成就开始了显示钟表。
另外:1,月份是从0定义到11的,所以5指代六月,11指代12月。
2,日期对象的变量是直接可以比较大小的
数组
相关文章推荐
- js动画(2)——透明度动画
- javascriptcore库的使用详解
- Newtonsoft.Json(Json.Net)学习笔记
- js阻止表单重复提交
- JavaScript的构造器与对象(二)
- JSP页面-------${fn:}内置函数常用()的详解
- JSP的自定义标签(三)之带标签体的标签
- JavaScript中记一个关于对象属性赋值的小问题
- JSP的自定义标签(二)之带属性的标签
- javascript日历插件
- JSP的自定义标签(一)
- JavaScript中关于数值转换的问题
- 跟我一起学extjs5(19--模块记录的拖放删除、拖放复制新增)
- js与原生通讯机制
- 使用Gson进行JSON处理
- Javascript封装
- OC与JS交互
- 百度touch.js真坑
- 使用Ajax方式POST JSON数据包(转)
- js中(function(){…})()立即执行函数写法理解