uni-app js语法

锋哥原创的uni-app视频教程:

2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni-app简介、第2讲 uni-app环境搭建、第3讲 uni-app之HelloWorld实现等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV1eG411N71c/uni-app的js API由标准ECMAScript的js API 和 uni 扩展 API 这两部分组成。

标准ECMAScript的js仅是最基础的js。浏览器基于它扩展了window、document、navigator等对象。小程序也基于标准js扩展了各种wx.xx、my.xx、swan.xx的API。node也扩展了fs等模块。

uni-app基于ECMAScript扩展了uni对象,并且API命名与小程序保持兼容。

标准js和浏览器js的区别

uni-app的js代码,h5端运行于浏览器中。非h5端(包含小程序和App),Android平台运行在v8引擎中,iOS平台运行在iOS自带的jscore引擎中,都没有运行在浏览器或webview里。

非H5端,虽然不支持window、document、navigator等浏览器的js API,但也支持标准ECMAScript。

请注意不要把浏览器里的js扩展对象等价于标准js。

所以uni-app的非H5端,一样支持标准js,支持if、for等语法,支持字符串、数字、时间、布尔值、数组、自定义对象等变量类型及各种处理方法。仅仅是不支持window、document、navigator等浏览器专用对象。

ES6 支持

uni-app 在支持绝大部分 ES6 API 的同时,也支持了 ES7 的 await/async。

ES6 API 的支持,详见如下表格部分(x 表示不支持,无特殊说明则表示支持):

es6课程:南通小锋网络科技Java1234课堂是高品质的Java视频课程平台。为励志成为Java全栈工程师的程序员们,提供优质的后端技术、前端技术、数据库、服务器视频教程。http://www.java1234.vip/course/71

pages下新建common目录,再新建test.js

javascript 复制代码
const a=2;
​
const obj={
    name:'jack',
    age:11,
    say(){
        console.log("姓名:"+this.name+" 年龄:"+this.age)
    },
    say2:function(){
        console.log("say2 姓名:"+this.name+" 年龄:"+this.age)
    },
    say3:(name,age)=>{
        console.log("say3 姓名:"+name+" 年龄:"+age)
    }
}
​
function func(m,n){
    return m+n;
}
​
export{
    a,
    obj,
    func
}

index.vue修改:

javascript 复制代码
<template>
	<view class="content">
		<image class="logo" src="/static/logo.png"></image>
		<view class="text-area">
			<view class="title">{{title}}</view>
			<view class="title common_style">{{text}}</view>
			<view class="title">{{text2}}</view>
		</view>
	</view>
</template>

<script>
	import {a,obj,func} from "@/pages/common/test.js"
	export default {
		data() {
			return {
				title: 'Hello',
				text: '',
				text2:0
			}
		},
		onLoad() {
			getApp().globalData.text="修改数据"
			this.text=getApp().globalData.text;
			this.text2=a;
			console.log(obj.name+":"+obj.age)
			obj.say();
			obj.say2();
			obj.say3("marry","12");
			console.log(func(1,2))
		},
		methods: {

		}
	}
</script>
相关推荐
kyriewen3 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
To_OC5 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
GuWenyue7 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
何时梦醒7 小时前
深入理解递归与快速排序 —— 从基础入门到手写实现
前端·javascript
bonechips7 小时前
LLM 的无状态:从 HTTP 协议到对话上下文工程
前端·javascript
胡志辉7 小时前
从 prototype 到 V8,看懂 JavaScript 原型链
前端·javascript
ping某9 小时前
专栏-null 和 undefined 到底是什么?
前端·javascript·后端
swipe12 小时前
从 0 到 1 理解 React 虚拟列表:定高、不定高与 Canvas 版本完整拆解
前端·javascript·面试
铁皮饭盒12 小时前
Bun执行python代码
前端·javascript·后端
zzzzzz31014 小时前
当甲方说'logo放大的同时再缩小一点'时,我用 AI 把这个需求做出来了
javascript·css·程序员