首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
说一说computed和watch的区别?
[问答题]
说一说computed和watch的区别?
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(112)
分享
纠错
49个回答
添加回答
71
牛客663468082号
1、功能上:computed是计算属性,watch是监听一个值的变化,然后执行对应的回调。 2、是否调用缓存:computed中的函数所依赖的属性没有发生变化,那么调用当前的函数的时候会从缓存中读取,而watch在每次监听的值发生变化的时候都会执行回调。 3、是否调用return:computed中的函数必须要用return返回,watch中的函数不是必须要用return。 4、computed默认第一次加载的时候就开始监听;watch默认第一次加载不做监听,如果需要第一次加载做监听,添加immediate属性,设置为true(immediate:true) 5、使用场景:computed----当一个属性受多个属性影响的时候,使用computed-----购物车商品结算。watch–当一条数据影响多条数据的时候,使用watch-----搜索框.
发表于 2022-05-24 21:11:57
回复(0)
27
addsa
computed是计算属性,依赖其他属性值,并且有缓存,只有当依赖的值发生了变化之后才会重新计算,不支持异步操作,而watch更多的是监听,当监听的值发生了变化,会立即执行回调进行操作,支持异步
发表于 2022-06-05 22:41:06
回复(0)
9
牛客160331559号
computed是计算属性,依赖其他属性值,并且有缓存,只要他依赖的值发生改变了,下一次获取computed的值时才会重新计算computed的值;watch更多的是监听观察作用,支持异步,每当监听的数值发生变化时就会立即回调进行后续操作。
发表于 2022-05-11 16:02:09
回复(0)
4
牛客919075960号
computed一般用于计算得出数据,并将数据缓存在内存当中,computed计算结果一般由他的依赖项所决定,只有当依赖项发生改变,computed才会重新计算,提升性能,在computed中只能进行同步操作。watch一般用于监听某一个属性或者多个属性甚至是一个对象,更多是监听管擦作用数据变化后会引发什么样的动作,在watch中可以进行异步操作
发表于 2022-08-04 16:08:38
回复(0)
3
乐扣乐扣
1.computed计算属性:Vue中用于对一些响应式变量逻辑操作后生成一个返回值,computed也具备响应式特性,一旦computed中的变量被改变,它便会触发。computed功能类似于函数,但它与函数不同的是它有缓存,如果输入的变量不变,computed不会被调用直接从缓存获取结果而函数则会被调用。 2. watch侦听器:一个侦听器只能用于侦听一个特定的响应式变量,且一旦响应式变量修改侦听器便会被触发。Vue3.0中加入了watchEffect实现了一个侦听器同时侦听多个变量,且被初始化时侦听器也会调用一次。
编辑于 2022-08-17 16:03:46
回复(0)
2
k-11
computed:计算属性,依赖于多个值,具有缓存,只有在当前依赖的值发生改变之后,才会重新计算,不支持异步操作。应用于需要进行大量数值计算的场景 watch:起到监听的作用,监听一个数据,然后可以进行操作,数值发生变化立即进行后续操作,无缓存,支持异步操作。应用于需要不断监听数值变化、异步或者开销较大而进行操作的场景 watch之中监听需要传入两个参数(普通数据类型),引用数据类型(需要设置deep属性与handle属性的回调函数)
发表于 2022-05-19 17:00:27
回复(0)
1
愿offer多多的放鸽子能手很谦虚
1.功能:computed是计算属性,依赖其他属性值;watch是监听一个值的变化,然后执行对应的回调 2.是否调用缓存:computed中的函数所依赖的属性没有发生变化,那么调用当前的函数的时候会从缓存中读取,而watch在每次 监听的时候都会执行回调 3.是否调用return:computed中的函数必须要return,watch中不是必须的 4.computed默认第一次加载的时候就开始监听;watch默认第一次加载不做监听:若需要第一次做监听,添加immediate:true 5.watch支持异步,computed不支持 6.使用场景:computed---当一个属性受多个属性影响---购物车结算 watch---当一条数据影响多条数据---搜索框
发表于 2023-09-08 16:27:38
回复(0)
1
在喝茶的大卫很讲道理
功能上:computed是计算属性,watch是监听值的变化,并执行相应的回调;是否使用缓存:computed有缓存,调用当前函数的时候会读取缓存,watch每次监听的值变化时都会执行函数;是否使用return:computed需要使用return返回;watch不是必须要用return;computed默认第一次加载就开始监听,watch没有。如果要设置,可以给watch加一个immediate属性。场景:computed适用于一个属性受多个属性影响,比如购物车结算;watch适合一个数据影响多个数据,比如搜索框
发表于 2023-03-22 18:34:13
回复(0)
1
欧阳嘉峰努力学习ing
1.watch能做的事情比computed多;2.computed的值有缓存,只要computed涉及的数据发生改变,就会重新计算 3.watch的值没有缓存但是支持异步,适合那种数据大量改变,或者需要消耗大量内存,watch主要起到监测数据变化,类似于某些数据的回调,每当监听的数据发生变化都会重新执行回调
发表于 2022-11-18 10:03:10
回复(0)
1
itian1
computed是计算属性,并具有缓存,只有当所依赖的函数发生改变才会重新进行计算,如果没有改变则直接从缓存中调取。watch是监听一个值的变化,触发相对应的函数回调,没有缓存,computed中的函数必须要有return返回,watch中可以没有,computed不支持异步,watch支持异步
编辑于 2023-02-12 16:49:00
回复(0)
1
牛客565253326号
computed计算属性是具有缓存属性的,只要依赖他的值发生变化,computed才会重新计算,而wtach监听属性,它是不具有缓存的,支持异步 监听data里面数据的变化,没当监听到数据变化时立即回调执行后续操作,应用场景:computed当一个属性受多个属性影响时 采用computed =》购物车计算 watch:当一个属性影响多个数据时 采用watch -》 搜索框
发表于 2022-09-29 15:51:17
回复(0)
1
牛客186390190号
1。功能:computed:计算属性,适合于依赖其他属性的属性计算 watch是监听,适合数据变化时要有回调函数 2。缓存:computed在依赖的数据没有发生改变的时候会从缓存中读取,而watch每次数据改变都会调用回调函数 3.return:computed调用的时候必须要有return,watch不用 4.监听:computed在第一次调用的时候就开启了监听,watch默认第一次不监听,如果要,就加上immediate:true
发表于 2022-08-27 17:09:52
回复(0)
0
前程似锦的小熊猫很自信
computed计算属性,依赖其它属性值并且有缓存,只有依赖的值发生变化后才会重新计算,不支持异步操作,watch监听事件,是监听的执法生了变化会立刻执行回调操作,支持异步
发表于 2025-06-24 13:12:12
回复(0)
0
狸漠
computed和watch都是 Vue.js 框架中用于响应式数据处理的特性。下面为你详细介绍: computed:是计算属性,用于基于其他响应式数据计算出一个新的值。它具有缓存特性,只有当依赖的响应式数据发生变化时,才会重新计算结果。 watch:用于监听响应式数据的变化,当被监听的数据发生变化时,会执行相应的回调函数。它支持异步操作,适合在数据变化时执行一些副作用,如发起网络请求、操作 DOM 等。
发表于 2025-04-25 19:52:27
回复(0)
0
kelell
computed:有缓存,触发条件时依赖值改变 watch:无缓冲,支持异步,监听数据变化
发表于 2025-02-19 16:28:57
回复(0)
0
贪睡的鲸鱼准备进厂
computed是计算数据,有缓存值,计算结果需要依赖项,当依赖项修改时会重新进行数据就算,不接受异步操作 watch是监听属性,无缓存,当监听的数据改变时就会执行回调函数,接收异步操作
发表于 2024-10-31 17:27:52
回复(0)
0
又熬夜了的牛油果很孤独
computed是计算属性,依赖其他属性值,并且有缓存,只有他依赖的属性值发生变化,下一次获取computed的值时才会重新计算computed的值; watch更多的是监听观察作用,支持异步,类似于某些数据的回调监听,每当监听的数值发生变化时,就会立即回调进行后续操作。 应用场景: computed:需要进行数值计算,并且依赖于其他数据时应该使用computed; watch:在数据变化时执行异步操作或开销较大的操作时应该使用watch。
发表于 2024-10-24 16:34:06
回复(0)
0
我已成为0offer的糕手
**标准回答**: - **computed**:是计算属性,依赖其他属性的值,且具有 **缓存**。只有当依赖的属性值发生改变时,下一次获取 computed 的值时才会重新计算。这使得 computed 在多次访问时性能更好。 - **watch**:主要用于监听某些数据的变化,适合执行一些 **异步操作**。当被监听的数据变化时,立即触发回调函数,支持处理复杂的逻辑。 **加分回答**: - **computed 应用场景**:当需要基于多个数据源进行 **数值计算**,并且依赖于其他数据时,建议使用 computed。因为 computed 会缓存结果,只有当依赖的数据发生变化时才会重新计算,这可以避免每次访问都重新计算,提升性能。 - **watch 应用场景**:当需要在数据变化时执行 **异步操作** 或处理开销较大的操作时,使用 watch 更合适。例如,监听某个数据的变化后去调用 API,或者需要控制执行频率时,watch 提供了灵活性,允许我们处理异步逻辑和设置中间状态,而这些是 computed 无法做到的。
发表于 2024-10-12 17:47:15
回复(0)
0
一个编程牛
computed值有缓存、触发条件是依赖值发生更改、 watch无缓存支持异步、监听数据变化
发表于 2024-09-03 22:10:29
回复(0)
0
Supergeekdream
computed 有缓存 触发条件是状态值发生改变, watch无缓存支持异步 监听数据滨化
发表于 2024-06-21 22:21:35
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
React
上传者:
real1993
难度:
49条回答
112收藏
1860浏览
热门推荐
相关试题
说一说组件通信的方式?
React
评论
(51)
如图 1 表示使用快表(页表)的虚...
编程基础
评论
(1)
对于我们来说,谁是好的顾客?
销售常识
评论
(1)
订单表order_table全部记...
查找
数据库
数据分析
SQL
评论
(2)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题