js之知识点总结

函数

() 运算符调用函数
使用上面的例子,toCelsius 引用的是函数对象,而 toCelsius() 引用的是函数结果。
访问没有 () 的函数将返回函数定义:


function toCelsius(fahrenheit) {
    return (5/9) * (fahrenheit-32);
}
console.log(toCelsius);
console.log(toCelsius());

windows 执行结构:
在这里插入图片描述

对象

访问属性

访问对象属性,以两种方式访问属性:

//两种访问属性的方法
objectName.propertyName 

objectName["propertyName"]
var person = {
    firstName:"Bill",
    lastName:"Gates",
    age:50,
    eyeColor:"blue"
};

var key = person.firstName;
console.log('name1:'+person.firstName);     //  name1:Bill
console.log('name2:'+person['firstName']);    //  name2:Bill
console.log('name3:'+person[firstName]);     // 报错  ReferenceError: firstName is not defined
console.log('name4:'+person[key]);   // name4:undefined 

请不要把字符串、数值和布尔值声明为对象!

如果通过关键词 “new” 来声明 JavaScript 变量,则该变量会被创建为对象:

var x = new String();        // 把 x 声明为 String 对象
var y = new Number();        // 把 y 声明为 Number 对象
var z = new Boolean();       //	把 z 声明为 Boolean 对象

请避免字符串、数值或逻辑对象。他们会增加代码的复杂性并降低执行速度。

不要把字符串创建为对象。它会拖慢执行速度。
new 关键字使代码复杂化。也可能产生一些意想不到的结果:
当使用 == 相等运算符时,相等字符串是相等的:

var x = "Bill";             
var y = new String("Bill");

// (x == y) 为 true,因为 x 和 y 的值相等

当使用 === 运算符时,相等字符串是不相等的,因为 === 运算符需要类型和值同时相等。

var x = "Bill";       // typeof x  = string        
var y = new String("Bill");    // typeof y = object

// (x === y) 为 false,因为 x 和 y 的类型不同(字符串与对象)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值