目录

小程序中的js和普通的javascript区别

目录

小程序中的js和普通的javascript区别

(1)小程序不是运行在浏览器中,所以没有BOM和DOM对象

console.log(window); => undefined
console.log(document); => undefined

(2)小程序的JS有一些额外的成员

App方法 用于定义应用程序实例对象

Page方法 用于定义页面对象

//微信小程序由一个应用程序实例对象+多个页面对象构成//

getApp 方法 用来获取全局应用程序对象

//每个小程序有一个唯一的应用程序示例,可以通过getApp方法在任何位置拿到这个示例。//

a.在index.js中:
	var app = getApp();
	这样app就可以.出来应用对象中的成员
b.在app.js中定义一个新的成员:foo
	foo:function() {
    	console.log(123);
  •}
c.在index.js的onLoad中调用foo方法
	app.foo(); //打印出值为123。

getCurrentPages 方法 用来获取当前页面的调用栈(数组,最后一个就是当前页面)

(//个人理解:该方法就是用来获取调用的所有的页面,第一个访问的在最下面,最后一个访问的在最上面,这些页面组成了一个数组)。

代码中问题总结:

在测试使用getCurrentPages 方法时,使用tabbar页面切换的方式,发现数组的长度length始终是1,
错误点在于:Tab切换  页面全部处栈,只留下新的Tab页面,可以使用页面链接跳转时使用该方法。

wx 对象 用来提供核心API的

console.log(wx); //可以看到所有的API.

(3)小程序的JS是支持CommonJS规范的(导入导出功能)

在utils文件夹中新建一个foo.js文件
	function say(a) {
 		console.log('hello' + '---'  + a);
	}
	module.exports = {
  		hh:say
	}
以上定义一个foo函数并导出。
	const foo = require('/utils/foo.js');
	foo.hh('lisa');
以上代码在app.js文件中导入并使用