JS基础知识(数据类型)
2013-11-26 14:56
447 查看
1,关于typeof 因为是弱类型语言,而程序代码中又不得不定义出变量的类型所提供出来的方法。 返回的结果如下图: 如下例子:
var test = "123"; var ob = { add : function(x,y){return x + y} } var fu = function(x,y){return x - y} var nu = null; var xyz; alert(typeof(test));//string alert(typeof(123));//number alert(typeof(undefined))//undefined alert(typeof(fu));//function alert(typeof(ob));//object alert(typeof(nu));//object alert(typeof(xyz));//undefined看来上面的例子,可以说通过typeof来判断变量类型不是件很简单的事。 更详细的列表: 摸我 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/typeof2,undefined undefined表明变量还未定义。 就像你问javascript,tea是什么,它会回答:没听说过... 就如下:
var tea; alert(tea);也可以这样:
var x = undefined;//默认未赋值的变量为undefined判断方式:
if (x === undefined) ...
if (!x) ...
if (typeof x === "undefined") ...
[code]推荐最后者,详细区别参考:继续摸[/code]
另外,对于第二种判断,大家一定学习过if(x)返回false的值有如下:
false 0 "" NaN null undefined
3,null
null表示一个空对象指针,参照前面typeof的例子,typeof操作会返回"object"。
var car = null;alert(typeof car); //”object”
就像你问javascript,tea是什么,它会回答:听说过,具体是怎么样的不知道。这就是和undefined的区别吧。
如果用双等号判断要注意的是:[/code]
alert(undefined == null)//true
4,Boolean关于
自动转变值到true或false:
var message = “Hello world!”;var messageAsBoolean = Boolean(message);在if里的值也是这个道理,如下表转换原则:
5,Number
关于八进制和十六进制
如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 "x",则解释为十六进制数。
var y=0377; var z=0xFF;
所以不要在数字前面写0
方法:
[code]toFixed()方法比较常用,比如在页面上计算百分比的时候:[/code]
var num = new Number(13.37);document.write (num.toFixed(1))
判断是否为数字:
1,使用isNaN(),isNaN是is Not a Number的简写,所以不是number返回true,是number返回false。
2,当然可以使用typeof
转成数字类型:
1,parseFloat(x)
特别注意:parseFloat("40 years") //40
详细:摸摸
2,new Number(x)
3,~~x
4,+x
等于调用了Number的构造函数
[code]6,Object[/code]
[code]三种方式创建object(非常清晰):[/code]
[code]继续摸摸[/code]
关于三种方法:
类方法对象方法原型方法
例子:
function People(name){this.name=name;//对象方法this.Introduce=function(){alert("My name is "+this.name);}}//类方法People.Run=function(){alert("I can run");}//原型方法People.prototype.IntroduceChinese=function(){alert("我的名字是"+this.name);}var p1=new People("Windking");p1.Introduce();People.Run();p1.IntroduceChinese();
理解:
1,类方法理解成静态方法就可以了。
2,对象方法就是实力方法。
3,用于扩展原对象,new出来的实例可以调用,内部使用的this,是指对象实例
对象方法在new的时候都会重新创建一遍,而原型方法则不用。----------------------------------------继续前行!
相关文章推荐
- 【js基础】javascript中关于数据类型一些知识和类型判断
- JavaScript数据类型及对象(js基础知识)
- H5基础知识第八课时(JS数据类型和输出方法)
- Js基础知识梳理系列(01):数据类型
- Redis基础知识-数据类型
- js五种数据类型,以及相关的基础方法
- 【C#】基础知识—数据类型、数据类型转换
- 基础知识:数据类型优先级
- Java基础知识之基本数据类型
- Java基础知识强化22:Java中数据类型转换
- 【cocos2d-js官方文档】四、基础数据类型
- 面试题:介绍JS基础数据类型
- Python基础知识(五)--数据类型
- 【JavaScript 2—基础知识点】:数据类型
- 基础知识:MySQL数据类型及列类型 (1)
- java基础知识(一)数据类型(下)
- Java基础知识学习之路-04-第三章-数据类型和运算符
- go-基础知识三-数据类型-布尔型
- 基础知识:MySQL数据类型及列类型 (1)
- 【知识整理】javascript基础语法总结(2)——数据类型转换和运算符