当前位置: 首页 > news >正文

定制商城网站的费用网络推广运营外包公司

定制商城网站的费用,网络推广运营外包公司,近几天的新闻大事,价格低廉换个说法一、区别 dup 浅复制:dup 方法创建对象的浅复制。 不复制冻结状态:dup 不会复制对象的冻结状态。 不复制单例方法:dup 不会复制对象的单例方法。 deep_dup 深复制:deep_dup 方法创建对象的深复制,递归复制嵌套的对象。…

一、区别

  • dup

浅复制:dup 方法创建对象的浅复制。
不复制冻结状态:dup 不会复制对象的冻结状态。
不复制单例方法:dup 不会复制对象的单例方法。

  • deep_dup

深复制:deep_dup 方法创建对象的深复制,递归复制嵌套的对象。
需要手动实现:deep_dup 不是 Ruby 内置的方法,通常需要手动实现或使用 ActiveSupport 提供的实现。

  • clone

浅复制:clone 方法创建对象的浅复制。
复制冻结状态:clone 会复制对象的冻结状态。
复制单例方法:clone 会复制对象的单例方法。

二、示例

  • 浅复制的意思是只复制对象的第一层属性,不会递归复制嵌套的对象。
  • 深复制的意思是递归复制嵌套对象
require 'active_support/core_ext/object/deep_dup'# 使用 dup
# 这里 original 是一个包含嵌套哈希的哈希。dup 方法只复制了 original 的第一层属性,因此 dup_copy[:b] 和 original[:b] 仍然引用同一个嵌套哈希 { c: 4 }。所以修改 dup_copy[:b][:c] 也会影响 original[:b][:c]
original = { a: [1, 2, 3], b: { c: 4 } }
dup_copy = original.dup
dup_copy[:b][:c] = 5
puts original[:b][:c] # => 5 (浅复制)original = "hello".freeze
copy = original.dup
copy.frozen? # => false (不复制冻结状态)# 使用 deep_dup
original = { a: [1, 2, 3], b: { c: 4 } }
deep_dup_copy = original.deep_dup
deep_dup_copy[:b][:c] = 6
puts original[:b][:c] # => 4 (深复制)# 使用 clone
original = { a: [1, 2, 3], b: { c: 4 } }
clone_copy = original.clone
clone_copy[:b][:c] = 7
puts original[:b][:c] # => 7 (浅复制)original_str = "hello".freeze
clone_copy = original_str.clone
puts clone_copy.frozen? # => true (复制冻结状态)

三、dup 方法常用场景:通常用于创建对象的浅复制

# 避免修改原始对象
original_array = [1, 2, 3]
copy_array = original_array.dup
copy_array << 4
puts original_array.inspect # => [1, 2, 3]
puts copy_array.inspect     # => [1, 2, 3, 4]# 复制可变对象
original_hash = { a: 1, b: 2 }
copy_hash = original_hash.dup
copy_hash[:c] = 3
puts original_hash.inspect # => {:a=>1, :b=>2}
puts copy_hash.inspect     # => {:a=>1, :b=>2, :c=>3}# 复制对象的状态
class MyClassattr_accessor :value
endoriginal = MyClass.new
original.value = 10
copy = original.dup
copy.value = 20
puts original.value # => 10
puts copy.value     # => 20# 复制 ActiveRecord 对象
original_user = User.find(1)
copy_user = original_user.dup
copy_user.email = "new_email@example.com"
copy_user.save
http://www.mmbaike.com/news/97865.html

相关文章:

  • 网站域名301谷歌浏览器下载手机版安卓官网
  • 家具网站建设方案如何提高网站的搜索排名
  • 音乐网站建设教程互联网广告
  • 集团做网站常用的搜索引擎有哪些?
  • 网站建设 用英文怎么说2023疫情第三波爆发时间
  • 兰州忠旗网站建设科技有限公司seo霸屏
  • 青岛行业网站建设电话软件怎么推广
  • 一个空间建多个网站的方法免费顶级域名申请网站
  • 如何做防水网站旅游景区网络营销案例
  • 房地产做网站如何制作一个网页
  • wordpress仿seowhy模板黄山搜索引擎优化
  • 免费网页空间申请百度seo优化招聘
  • 建站收费标准活动营销推广方案
  • 商业摄影网站网络科技有限公司
  • 做网站开创和中企动力哪家强上海疫情最新情况
  • 做英文网站用什么源码涟源网站seo
  • 什么网站做海报优化网站哪个好
  • 与狗做网站百度指数查询
  • 怎么做网站内部链接福州关键词排名软件
  • 定制网站开发接私活最近最新的新闻
  • fireworks个人网站模板百度识图搜索网页版
  • 怎样做国外网站qq群推广链接
  • 创新的网站建设推广普通话内容100字
  • 制作网站报价腾讯会议价格
  • 安徽省建设法治协会网站网页设计网站
  • 国家企业信息官网查询哈尔滨seo和网络推广
  • seo咨询价格找推推蛙黑帽seo技术有哪些
  • 青岛谁家做网站网址导航下载到桌面
  • 网站美化工具长沙seo优化
  • 网站怎么做背景小红书推广怎么收费