【Javascript】javascript 中的指针
来源:互联网 发布:数据库营销培训课程 编辑:程序博客网 时间:2024/06/08 17:22
C/C++语音中指针让很多人望而却步,Java中没有指针让很多人趋之若鹜。
那么深受编程小白喜欢的javascript好像也没有指针啊?博主自己在学习的过程中,确实没有见到有哪块知识明确地指出 javascript 的指针是什么,没有变量类型专门表示指针这种类型。
其实在不同的语言内部,应该都是包含指针的。但是考虑到受众的接受能力,将指针包装隐藏起来了。在 Javascript 中与指针相关的主要是引用。换句话说,就是 b={x:"x",y:"y"}; a = b
其中,可以通过 a 进行操作,实现对 b 的操作。如,a.x = "1" ; console.log(b.x);
显示的结果是是 1
。
相信上面这个问题大家接触的比较多一些。但是很多时候也只是当作一个引用特性去考虑 ,并没有深入思考过。下面,通过一个问题来引入 javascript 的指针概念:
有一个函数,递归计算,将符合条件的次数累加起来,并最终返回。
正常的思路,可能是建立一个全局变量,绑定以window 或者 global 对象上。对该变量进行累加。
function Re(n){ window.count ? null : window.count = 1; if( n <100){ if(n%2)window.count++; return Re(n+1)+3; }else{ return 1; }}
固然这样是可以做到的,但是如果将计数作为一个参数,放入 Re() 函数中呢?需要将指定的参数作为记数参数时怎么办。切记,此时的传参为值传参,怎么修改为指针传参?
这个时候,可以利用 javascript 的引用特性,和数组的特性:
function Re(array , n){ if(n<100){ if(n%2)array[0]++; return Re(n+1)+3; }else{ return 1; }}
使用数组作为参数,实际中只对 [0] 元素进行调用,保证了值传递的同时,可以修改值。达到了类似于C语言中的指针作用。
阅读全文
0 0
- 【Javascript】javascript 中的指针
- JavaScript中的this指针
- JavaScript中的this指针
- 详解Javascript 中的this指针
- 详解Javascript. 中的this指针
- 详解Javascript 中的this指针
- 详解Javascript 中的this指针
- 详解javascript中的this指针
- 详解Javascript 中的this指针
- javascript指针
- javascript中的this指针、函数、事件、对象
- 深入认识JavaScript中的this指针
- 深入认识JavaScript中的this指针
- 深入认识JavaScript中的this指针
- 深入认识JavaScript中的this指针
- 深入认识JavaScript中的this指针
- 深入认识JavaScript中的this指针
- 高手详解Javascript中的this指针
- 需要学习的mysql函数
- 如何设置默认页面spring mvc
- PID算法的C语言实现一 PID算法原理
- 可滚动的TextView
- web之前女友,简单绕过
- 【Javascript】javascript 中的指针
- 映射的数据字典的id来自于别的表的字段
- 简单选择排序 java实现
- 思政 总结1
- 进程学习11--信号signal
- java 中的区别
- php学习笔记-保留表单在用户提交表单后的输入数据
- [YTU]_1096( 字符逆序)
- Java学习笔记--数据库初识