javascript高级程序设计学习(一)-----js基础

1.变量

     命名规则:$ _或字母开头。

    变量无类型,可以不初始化。不过是声明变量用var 来声明是个好习惯。


2.值的类型

   原始值:存在栈中 包括Null, Undefined, Number, String, Boolean五种基本类型。

  引用值:存在堆中, Object.  

    特别: typeof null返回object, null==undefined返回true;


常用Obejct对象属性: constructor构造函数。

prototype返回object的一个实例。


常用对象:

  Number, String , Array, Date, Function, RegExp, HTML DOM.


3.运算符

  在计算上与c语言家族很上

  与java , c等编程语言有较大区别的例子:

    var e=e||window.event;      是比较常见的声明event对象的方法。意思是如果e存在,e=e,否则e=window.event.

  "Blue"<"alpha" 而"blue">"alpha"字符串的比较是比较字符码,B:66, b: 98, a: 97.

   "25">3返回true "25"被转换成数字25.   "a">3  返回false, 因为"a"转成数字会成为NaN,任何包含NaN的关系运算符将返回false;


4.类型检查

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>类型检查</title>
<style>
  .code{font-family:Verdana, Geneva, sans-serif; min-width:500px;background:darkgrey;white-space:pre}
</style>
</head>

<body>
<div>类型检查的两种方法:
  <p>1. typeof
     返回值可能为number boolean string object function undefined.缺点是对object对象无法再细分。
  </p>
  例子:
  <div class="exmple">
    <div class="code">
     function testTypeof(){
       var str="bbb";
       var str1=new String("bbb");
       var num=10;
       alert(0==false)
       alert((str==str1)+","+(str===str1));  //true,false ==值相同 ===值和类型都要相同
       alert(typeof str);                    //string
       alert(typeof str1);                   //object
       alert(typeof num);                    //number
     }
     </div>
     <button οnclick="test(this)">运行</button>
  </div>
  <p>2. constructor属性, 为function
     利用构造函数比较类型.用法 val.constructor == String, val是基本类型string,或者对象String 上面这句都返回true
  </p>
  例子:
  <div class="exmple">
    <div class="code">
     function testConstructor(){
       var str="bbb";
       var str1=new String("bbb");
       var num=1;;
       var o=new Object();
       alert(str.constructor== String);           //true
       alert(str1.constructor== String);                   //true
       alert(num.constructor== Number);                   //true
       alert(o.constructor== Object);                     //true
     }
     </div>
     <button οnclick="test(this)">运行</button>
  </div>

</div>

<script>
  function test(oBtn)
  {
	  var oDiv=oBtn.parentNode.childNodes[1];
	  var code=oDiv.innerHTML;
	  var fn=eval("("+code+")");
	  fn();
  }
</script>
</body>
</html>



参考图书:<<javascript高级程序设计>><<精通javascript>>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值