两分钟带你了解JS的传值方式

两分钟带你了解JS的传值方式

这段时间干了一些全栈的事,对JS有了一些学习与了解,这一篇主要是JS的传值的方式的总结。

我们一般说JavaScript是传值的,但是从某种角度来说其实也可以说是传的引用,下面来整理一下。

a4a3ba358f9c9eb8f175bdc5d8dc8d3.png

我们一般将JS的传值分成两种,当传递的参数是原始类型的时候是完全的传值。 

当传递的事对象的时候,传递的是对象的引用的克隆版,传递的仍然是值。

以下是传统类型:

3b894a3eebb285e91c9d61a87355c71.png

包括5种数据类型,javaScript中没有类的概念,只有一种伪类。

引用类型:

7fa3316c9bce94eb7a53931b5aa2050.png

怎么理解呢?
当我们传值得时候,对该值操作是不会影响到原本的数据的。  

当我们共享的方式的时候:对对象的属性控制(a.属性名)可以操作到原本的值,但是对对象直接读写(a=1)并不能联系的原本的对象。

var obj = {    value: 1};function foo(o) {    o.value = 2;    console.log(o.value); //2  --赋值}foo(obj);console.log(obj.value) // 2  --值被改变var obj = {    value: 1};function foo(o) {    o = 2;    console.log(o); //2    --修改的是o}foo(obj);console.log(obj.value) // 1 --没有影响

登录后复制

通常比较成员类型的方式:

baf97587ade9b81196348272e37def8.png

方法等都属于,这也是我们使用var 定义方法能被调用执行的原因。

感谢大家的阅读,希望大家收益多多

本文转自:https://blog.csdn.net/zzg19950824/article/details/80395287

推荐教程:《JS教程》

以上就是两分钟带你了解JS的传值方式的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2727233.html

(0)
上一篇 2025年3月7日 23:42:41
下一篇 2025年3月7日 23:42:49

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 一起来聊聊jQuery、JavaScript与JS三者间的区别

    JavaScript:是浏览器中一种常见的脚本语言,以此来实现网页的动态以及和后端(数据库)的交互。 jQuery:是JavaScript整合后的类库,通过操作jQuery可以减少原生JavaScript语句的使用,从而提高效率。 JS:则…

    2025年3月7日
    200
  • js中substring、slice与substr的区别有哪些?

    js中substring、slice与substr的区别有:1、slice和substring接收的是起始位置和结束位置,而substr接收的则是起始位置和所要返回的字符串长度;2、slice将字符串的长度与对应的负数相加,结果作为参数。 …

    2025年3月7日
    200
  • 如何实现图片懒加载?

    实现懒加载的方法:首先自定义属性如【data-imgurl】,存放着图片的路径;然后通过js判断界面滚动的位置或图片是否已加载;最后加载再去获取属性【data-imgurl】的值赋给src即可。 实现图片懒加载的方法: 首先自定义属性如【d…

    2025年3月7日
    200
  • JS中渐进增强是什么意思?

    渐进增强的意思是针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。 JS中渐进增强的意思是: 想了解渐进增强什么意思,也同时了解优雅降级,就一个意思,为了实现css3的特效…

    2025年3月7日
    200
  • JS中行内style怎么写?

    行内style的写法为:1、对复合属性的写法是去掉中间的“—”,并将第二个单词大写,代码为【alert(box.style.color)】;2、float是关键字有特殊写法,代码为【alert(box.style.float)】。 JS中行…

    2025年3月7日
    200
  • html+css+js实现魔性的舞蹈动画效果(代码分享)

    本篇文章给大家分享一下html+css+js实现魔性的舞蹈动画效果的代码。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。 使用html+css+js实现魔性的舞蹈,让我们燥起来!!! 效果图:  代码如下,复制代码即可使用…

    2025年3月7日
    200
  • 手把手教你如何实现前端的吸顶效果

    前端实现吸顶效果 1、监听scroll事件,实现吸顶功能 2、css实现吸顶 写页面经常会遇到这种需求:导航菜单初始位置不在头部,滑动页面时候当导航菜单滑到头部位置就固定在头部,往下滑导航菜单又回到初始位置。 网页被卷起来的高度/宽度(即浏…

    2025年3月7日
    200
  • 史上最全的js、jQuery面试题

    js、jQuery面试题整理 1.数据类型 基本类型:除Object、String、Number、boolean、null、undefined。 引用类型:object。里面包含的 function、Array、Date。 推荐相关文章:2…

    2025年3月7日
    200
  • js如何准确判断变量的数据类型

    可以通过tostring()方法来实现。 (推荐教程:js教程) 函数介绍: toString() 是 Object 的原型方法,调用该方法,默认返回当前对象的 [[Class]] 。这是一个内部属性,其格式为 [object Xxx] ,…

    2025年3月7日
    200
  • 带你了解js中[]、{}、()区别(详解)

    一、{ } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数体 {}表示对象、[]表示对象的属性、方法,()如果用在方法名后面,代表调用 如: var LangShen = {“Name”:”Langshen”,”AGE”…

    2025年3月7日
    200

发表回复

登录后才能评论