.js中如何将一个变量的值赋给另一个变量?
发布于 4 年前 作者 tao91 993 次浏览 来自 问答

原本主要是想实现跳转页面时参数传递的问题,总是传不过去,然后又采用全局变量,还是传不了,又测试了下发现,变量a的值竟然不能赋给变量b(我是用console.log查看b的),于是彻底崩溃了。

求教大家,在.js中如何将var a的值赋给var b?是a=b吗?(为什么我试了不行)

能给个页面传递变量值(是变量,不是一个常量)的栗子更好,谢谢。

8 回复

如果有改变的话,两个都重新赋值

还有两个问题想请教您:

1、在bindChange函数中console.log(hour)这句运行后监控台显示为undefined,没有值。这个函数对应的是下面这个控件:

<view>

<view>{{hour}}时 : {{minute}}分</view>

<picker-view indicator-style=“height: 50px;” style=“width: 100px; height: 300px;” value="{{value}}" bindchange=“bindChange”>

<picker-view-column>

<view wx:for="{{hours}}" wx:key=“hours” style=“line-height: 50px”>{{item}}时</view>

</picker-view-column>

<picker-view-column>

<view wx:for="{{minutes}}" wx:key=“minutes” style=“line-height: 50px”>{{item}}分</view>

</picker-view-column>

</picker-view>

</view>

2、在

//点击开始按钮事件函数

enterChanging: function () {

console.log("hour="+hour),

wx.navigateTo({

url: '../changing/changing?hour='+hour,

})

},

中,我到changing页面的.js中onload函数中接受这个值时,接受不到,是我哪里错了吗?

onLoad: function (option) {

var key1 = option.hour;

console.log(key1)

},

var app = getApp();

const hours = []

const minutes = []

var hour

var minute

for (let i = 0; i <= 23; i++) {

hours.push(i)

}

for (let i = 0; i <= 59; i++) {

minutes.push(i)

}

// pages/main/main.js

Page({

/**

  * 页面的初始数据

  * 1、设置初始时间值

  */

data: {

hours: hours,

hour: 0,

minutes:minutes,

minute: 0,

value: [0, 0]

},

/**

  * 生命周期函数–监听页面加载

  */

onLoad: function (options) {

},

//  点击时间组件确定事件  

bindChange: function (e) {

const val = e.detail.value

this.setData({

hour: this.data.hours[val[0]],

minute: this.data.minutes[val[1]],

}),

console.log(hour)

},

//点击开始按钮事件函数

enterChanging: function () {

console.log(“hour=”+hour),

wx.navigateTo({

url: ‘…/changing/changing?hour=’+hour,

})

},

不是同一个变量的话,我应该怎么修改呢?

方法一,在跳转时传 query 参数,B 页面中在生命周期方法 onLoad 中接收参数。

wx.navigateTo({
  url: 'test?id=1'
})
Page({
  onLoad: function (option) {
    console.log(option.id)
  }
})

方法二,使用 Storage 传参。A 页面跳转前存储值,B 页面读取值并清除 Storage 。

wx.setStorageSync('key', 'value')
page({
  onShow: function () {
    wx.getStorageSync('key')
    wx.removeStorageSync('key')
  }
})

ES6

let jack = 'I am male',mary = 'I am female';
[jack,mary] = [mary,jack];
console.log(`jack:${jack}`);
console.log(`mary:${mary}`);

你用var 定义的变量和data:{}里面的变量是分开的,不是同一个变量

var a=‘123546’;

var b;

b=a;这样就可以把a的值赋值给b了吧

console.log(“b=”,b

console.log(“a=”,a)

回到顶部