JavaScript的变量

什么是变量

变量与其他程序设计语言相同,用来临时存储信息
创建方法如下:(弱数据类型)

var x;
x = 123;
alert(x+1);
//上述会弹出124
var x;
x="123";
alert(x+1);
//上述会弹出1231

变量的规则

一次:哪里需要就写哪里
多次:保存数据的容器 变量

什么是标识符

变量、函数、属性的名字,或者函数的参数

标识符的命名规则

  1. 可以用字母、数字、下划线_、美元$组成
  2. 不能以数字开头
  3. 不能用关键字(string if for var…)保留字(go class…)作为标识符

变量的相等比较

基本数据类型比较

	var xmScore = 4;
    var xhScroe = 4;
    console.log(xmScore==xhScroe);//true
    console.log(xmScore===xhScroe);//true  都是number类型

引用数据类型比较

	var xm = {age:18,score:4};
    var xh = {age:18,score:4};
    console.log(xm==xh);//false
    console.log(xm===xh);//false  一般引用数据类型用 === 比较

    var xm = {age:18,score:4};
    var xh = xm;
    console.log(xm===xh);//true

比较两个对象的值相等

	var xm = {age:18,score:4};
    var xh = {age:18,score:4};
    function equalObjs(a,b){
      for(var p in a){ //p在数组里是代表 索引,在对象里是代表 属性名
        console.log(a[p]+"-"+p);
        console.log(b[p]+"-"+p);
        if(a[p]!==b[p]){
          return false;
        }
        return true;
      }
    }
    console.log(equalObjs(xm,xh));//true

用数组的方法判断对象的值相等

var xm = {age:18,score:4};
    var xh = {age:18,score:4};
    function equalArray(a,b){
      if(a.length!==b.length){
        return false;
      }
      for(var i = 0; i<a.length ; i++){
        if (a[i]!==b[i]){
          return false;
        }
        return true;
      }
    }

复制变量的值

	var xmScore = 4;
    var xhScore = xmScore;
    console.log(xhScore);//4

    //引用数据类型
    var xm = {age:18,score:4};
    var xh = xm;
    xh.score++;
    console.log(xh.score);//5
    console.log(xm.score);//5

只想单纯的复制一份,不想指向同一个引用

	var xm = {age:18,score:4};
    function copyObj(obj){
      var newObj = {};
      for (var p in obj){
        newObj[p] = obj[p];
      }
      return newObj;
    }
    xh = copyObj(xm);
    console.log(xh);//age:18,score:4
    console.log(xh===xm);//false 不是同一个对象
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值