javascript与python中容易混淆的知识点个人见解

QQ群:33314708

一、

var cars = ["Porsche", "Volvo", "BMW"];

var声明一个变量切赋值数组。

这个与python中的字典基本一样。
二、

var person = {firstName:"Bill", lastName:"Gates", age:62, eyeColor:"blue"};

       var声明一个变量赋值对象

这里与python有中的字典或者json有所不同

python中字典的key一般是不可变类型。有些网页返回可以能直接就是对象,而不是json处理时候需要注意

 

JavaScript 从左向右计算表达式。不同的次序会产生不同的结果:

var x = "Porsche" + 911 + 7;
结果:
Porsche9117

三、判断或者获取变量数据类型:typeof 

typeof 0                   // 返回 "number"
typeof 314                 // 返回 "number"
typeof 3.14                // 返回 "number"
typeof (7)                 // 返回 "number"
typeof (7 + 8)             // 返回 "number"

需要注意的是:未定义的类型是 undefined而空值与 undefined 不是一回事。

var person;                  // 未定义值是 undefined,类型是 undefined

var car = "";                // 空值是 "",类型是 "string"

Null

在 JavaScript 中,null 是 "nothing"。它被看做不存在的事物。

不幸的是,在 JavaScript 中,null 的数据类型是对象。

您可以把 null 在 JavaScript 中是对象理解为一个 bug。它本应是 null。

您可以通过设置值为 null 清空对象:

实例

var person = null;           // 值是 null,但是类型仍然是对象

Undefined 与 null 的值相等,但类型不相等:

复杂数据

typeof 运算符可返回以下两种类型之一:

  • function
  • object

typeof 运算符把对象、数组或 null 返回 object。

typeof 运算符不会把函数返回 object。

实例

typeof {name:'Bill', age:62} // 返回 "object"
typeof [1,2,3,4]             // 返回 "object" (并非 "array",参见下面的注释)
typeof null                  // 返回 "object"
typeof function myFunc(){}   // 返回 "function"

typeof 运算符把数组返回为 "object",因为在 JavaScript 中数组即对象。

 

对象实例:

var person = {
  firstName: "Bill",
  lastName : "Gates",
  id       : 678,
  fullName : function() {
    return this.firstName + " " + this.lastName;
  }
};

有点像python中类。且实例化了这个类。

其中变量等于python中的类属性。注意赋值方式id:678。js中以冒号。相当于python中self.id=678

函数相当与python类方法。

javascript中对象属性的访问方式有:

person.lastName; 以点访问
person["lastName"]; 以中括号访问

这里还是跟python有一点点区别。python中只能用点访问类的属性

class anew():
    def __init__(self):
        self.a = 'a'
        self.b = 'b'
    def new(self):
       print('nwe')
x = anew()
print(x.a)
print(x.b)
x.new()
打印结果:
a
b
nwe

javascript中访问对象的方法和python一样:

name = person.fullName();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值