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/typeof
 
2,undefined
  
  undefined表明变量还未定义。
 
  就像你问javascript,tea是什么,它会回答:没听说过...
  就如下:
var tea;
alert(tea);
  也可以这样:
var x = undefined;//默认未赋值的变量为undefined
  判断方式:
if (x === undefined) ...
if (!x) ...
if (typeof x === "undefined") ...
推荐最后者,详细区别参考:继续摸
另外,对于第二种判断,大家一定学习过if(x)返回false的值有如下:
false
0
""
NaN
null
undefined

3,null

  null表示一个空对象指针,参照前面typeof的例子,typeof操作会返回"object"。

var car = null;
alert(typeof car); //”object”

  就像你问javascript,tea是什么,它会回答:听说过,具体是怎么样的不知道。这就是和undefined的区别吧。
  如果用双等号判断要注意的是:
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

方法:

toFixed()方法比较常用,比如在页面上计算百分比的时候:
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的构造函数

6,Object
三种方式创建object(非常清晰):
继续摸摸
关于三种方法:
类方法

对象方法

原型方法
例子:
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基础知识(数据类型)的更多相关文章

  1. [JS复习] JS 基础知识

    项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display  :inline or bloc ...

  2. HTML+CSS+JS基础知识

    HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...

  3. Node.js基础知识

    Node.js入门   Node.js     Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...

  4. 网站开发进阶(十五)JS基础知识充电站

    JS基础知识充电站 1.javascript alert弹出对话框时确定和取消两个按钮返回值? 用的不是alert对话框,是confirm confirm(str); 参数str:你要说的话或问题: ...

  5. js基础--javaScript数据类型你都弄明白了吗?绝对干货

    欢迎访问我的个人博客:http://www.xiaolongwu.cn 数据类型的分类 JavaScript的数据类型分为两大类,基本数据类型和复杂数据类型. 基本数据类型:Null.Undefine ...

  6. NodeJs>------->>第三章:Node.js基础知识

    第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info  方法 console.log(" node app1.js 1> ...

  7. C语言基础知识-数据类型

    C语言基础知识-数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.常量与变量 1>.关键字 C的关键字共有32个. >.数据类型关键字(12个) char,s ...

  8. JS基础知识笔记

    2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...

  9. js基础知识--变量类型和变量计算

    提问: JS中使用typeof能得到的哪些类型 何时使用===何时使用== JS中有哪些内置函数 JS变量按照存储方式区分为哪些类型,并描述其特点 如何理解JSON 涉及知识点:(1)变量类型 值类型 ...

  10. JS基础知识二

    JS控制语句 switch 语句用于基于不同的条件来执行不同的动作 <script> function myFunction(){ var x; var d=new Date().getD ...

随机推荐

  1. tomcat 集群配置,Session复制共享

    本配置在tomcat7上验证通过.通过此方法配置的集群,session信息将会被自动复制到各个节点. 1.配置Server.xml 在Server.xml中,找到被注释<Cluster/> ...

  2. php像新浪微博一样生成短域名

    <?php function shorturl($url='', $prefix='', $suffix='') { $base32 = array ( 'a', 'b', 'c', 'd', ...

  3. intel的网卡故障

    现象: 机器键盘接入,敲入无反应:机器无法ping通,整台机器假死状态. 查看message的日志,日志为如下内容: Aug :: TSMIS-CF kernel: ::19.0: eth0: Det ...

  4. pandas进行数据分析需要的一些操作

    一.查看数据 1.查看DataFrame前xx行或后xx行a=DataFrame(data);a.head(6)表示显示前6行数据,若head()中不带参数则会显示全部数据.a.tail(6)表示显示 ...

  5. [转载]Android 异步加载解决方案

    2013-12-25 11:15:47 Android 异步加载解决方案,转载自: http://www.open-open.com/lib/view/open1345017746897.html 请 ...

  6. RM报表预览,只有固定的1个订单页面

    明明选了多个记录,预览时,只显示最后一个. 原因: 主项数据的数据集选了报表自带的虚拟数据集了.

  7. xlistview的XML(脚)xlistview_footer

    <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...

  8. CSS实现图片变灰色及透明度

    [图片变灰] 每当遇到哀悼日,很多网站快速变灰色,来看看实现方式吧: 方式一,仅支持ie) html{filter:progid:DXImageTransform.Microsoft.BasicIma ...

  9. 编译mahout0.9

    一.编译的必要性 由于hadoop的生态系统中的各个组建之间的兼容性的问题,因此导致将各个组件组合在一起的时候,会存在一个兼容性的问题,这也是apache hadoop生态系统给开发者带来的一个问题, ...

  10. 系统的 host文件的作用

    有些用户可能已经注意到,我们在上网时除了可使用常规的 http://www.xxx.com或http://www.xxx.com.cn等形式的网站域名之外,还可以使用类似于“202.106.184.2 ...