js的逻辑运算
var a;
a = 1==1 || 2==2;
//a为true
var a;
a = 3 || 4 //只需要查看运算符左侧的值,如果值为真,则直接返回该值,不用计算右侧的值
//a为3
var a,b;
a = 66 == (b=123);
//a为false
var a,n;
a = 1 > (n=2) || 1 == 1 ? 9 : 8;
//a为9
执行js函数
-
目前可以有两种方式用于执行js函数
- 方式1:常规方式
//函数定义 function sign(n,a){ //this的指向没有发生改变 console.log(n+a) } //函数调用 sign('name:','aaa')
- 方式2:call机制
- call的作用:
- call函数必须通过一个被定义过的函数的名字进行调用。
- call函数有(call的调用者表示函数的参数个数+1)个参数
- 参数1:会被赋值给call的调用者表示函数内部的this
- 参数2,3,4 ... :赋值给call的调用者表示函数的具体参数
- call的作用:
//函数定义:没一个函数内部都会有一个this指针,该this就好比是python中的self function sign(n){ //this = 123 console.log(n) } //基于call机制的函数调用 sign.call(123,456) //参数123会被赋值给sign函数内部的this,456会被赋值给sing的参数n。 sign.call(123,456) = sign(456)
函数的参数
function sign(){
//arguments是用来接收函数所有的参数,arguments好比是python中的args
console.log(arguments) //arguments是一个数组,内部存储的是函数传递过来所有的参数
};
sign(1,2,3,4,5);
对象合并
v1 = {'name':'aaa'};
v2 = {'age':30};
//assign:将v2对象的数据合并到v1中。
Object.assign(v1,v2);
console.log(v1);
global关键字
- 在nodejs中默认会有一个global的关键字(全局变量)
//v4.js
v1 = 123;
console.log(global);
global本身是一个字典,可以存储所有的全局变量。自己定义的全局变量都会存储到global这个字典中。
global.v1 = 'aaa';
global.v2 = 'jay';
global.v3 = {
'age':30
};
//定义了三个全局变量
console.log(v1,v2,v3.age);