请教关于JavaScript中的对象是按照值传递还是引用传递
function SetName(obj){ obj.name="Tom";//执行之前,此时的obj和Person的name属性均为undefined obj1=new Object(); obj1=obj;//声明一个全局对象,那么obj、obj1和Person此时应该是同一个对象 }//SetName函数执行完之后,obj对象销毁,其余对象仍然存在 Person=new Object();//声明Person对象 SetName(Person);//调用SetName函数并将对象作为参数传入 obj1.name="Lucy";//通过obj1改变Person的name属性 alert(Person.name);//输出“Lucy”,左边的代码结论给的感觉是,JavaScript的对象就是按引用传递

/*
我想知道在调用SetName(Person)的时候,Person传递到function SetName(obj)位置到底是值传递
还是引用传递,如果按照如下的说法-->摘抄至JavaScript高级教程(第三版)
function SetName(obj){
obj.name="Tom";
obj=new Object();
obj.name="Lucy";
}
Person=new Object();//声明Person对象
SetName(Person);//
alert(Person.name);//输出Tom
我感觉调用函数的时候Person和obj应该是用一个引用,但是是将function中的obj局部对象重新声明,我觉得在执行了obj=new Object()重新声明对象这个语句之后,
此时的obj和调用SetName(Person)的Person对象是不同的引用(地址), obj.name="Lucy";这句话对Person此时根本就没有起作用,所以才会有书中的结论,输出为“Tom"的结果,所以,我觉得书中的这个代码还是不足以证明JavaScript中对象是按值传递的这个结论,
我想请问如何去理解这个问题,谢谢大家*/

1个回答

这个问题我这也有同感 感觉书的作者没讲清楚。但书中后面的那句才是重点,函数内部重写了obj时,变量引用的就是一个局部变量。而这个局部变量对象在函数执行完毕后就立即销毁了。但这能说明啥???只不过是解释了为啥obj.name不是Lucy仅此而已。。。。上网找了好多相关的知识,也是没懂说的是啥

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于js传递中文问题怎么处理
代码 ``` str="<ul><li class='listArr' style='width:70%;'><a href='javascript:openKnow("+item.id+","+item.kn_title+")' title='"+item.context+"'>" +"<span class='textSlice' style='width:280px;'>"+item.context+"</span></a></li>" ``` 报错:ReferenceError: java\u6280\u672F is not defined javascript:openKnow(111,java%E6%8A%80%E6%9C%AF) Line 1 item.kn_title 是中文的,alert(item.kn_title)是可以alert出来,这个地方如何处理,往大神请教
JavaScript原生方法如何将值传给controller?
各位老师,请教一个问题: 我使用springmvc架构,前台js方法获得了查询结果单选那条数据对应的ID,然后commit调用controller中api,将向这个ID传递给controller中的一个方法,实现编辑这条数据功能。 请问Javascript原生用法,如何实现commit时将值传递给controller方法? 感谢各位老师指导。
用JS怎么获取foreach循环中第一个td的值
页面中通过查询获取了一个表单的数据,现在需要把这个表单中的所有商品的id值传递到后台,请教大神,如图,怎么获取第一个td的值(listingDto.listId) ![图片说明](https://img-ask.csdn.net/upload/201703/20/1489976780_538630.png)
求问大神,关于前端JS脚本中接收数据的问题
最近公司在做一个web系统界面调整的工作,希望通过不同的登陆用户得到不同的界面, 想法是在后台页面对登陆的用户做一个判断,然后向前台传递值,根据返回的值加载不同的资源 但是在实际开发中发现<head>标签中有runat="server",以至于不能使用<%...%>,所以想请教一下 论坛的大师们,对于这种情况,有没有什么好一些的解决方案?
关于ajax返回值data的IS的问题
先贴出代码: ``` <script language="javascript">     function addclick() { //点击触发addclick事件 var txtuserName = $("#txtuserName").val();//用jquery获取id为txtuserName的页面标记的value,存放在txtuserName变量里 $.ajax({ type: "POST", //ajax的方式为post(get方式对传送数据长度有限制) url: "/AjaxRequest/AddUser.ashx", //一般处理程序页面AddUser.ashx(在2中会写出该页面内容) dataType: "json", //数据传回的格式为json data: { adduserName: txtuserName}, //要传送的数据键值对adduserName为键(方便2中的文件用此名称接受数据)txtuserName为值(要传递的变量,例如用户名) success: function (data) { //成功回传值后触发的方法 if (data != null && data.IS != "") { //如果回传的json不为null或json中的IS键对应的值不为空,则触发一下代码,否则弹出“请重新尝试” if (data.IS == "-1") { //如果json中的IS键对应的值为-1,则说明用户名已在数据库中存在 alert("添加失败!该名已存在!"); } else if (data.IS == "0") { //json中的IS键对应的值为0,则说明用户名没有添加成功 alert("添加失败!"); } else if (data.IS == "-2") { //json中的IS键对应的值为-2,则说明数据库返回的主键列不能转换成INT32类型 alert("数据库连接失败或访问失败!"); } else { alert("添加成功!"); $("#txtuserName").val(""); } } else { alert("请重新尝试!"); } } }) } </script> ``` 我想请教下data.IS里面这个IS是什么?我百度不到?哪位大神能解释的详细点吗?
struts2怎么实现页面到页面之间的传值?
我要实现一个产品订购的功能,在浏览产品的时候通过点击一个订购的链接,跳转到提交订单的页面,在跳转的同时要把浏览的产品的名称和型号传到提交订单的页面,并且把这里的订单类的产品名称和型号的表单域里赋上传递过来的值,因为只用到两个值,不想通过Action去操作,只涉及页面之间的值传递。。。 我是这样做的: 在浏览产品页面有:<a href='<s:url value="orderList_add.jsp" > <s:param name="productName" value="%{product.productName}" /> <s:param name="typeNum" value="%{product.typeNum}" /></s:url>'> [订购] </a> 这里通过param把产品名称和型号传递到orderList_add.jsp页面,在orderList_add.jsp页面我用request.getParameter("typeNum")可以得到值,(虽然传递过来的中文会乱码),但却不知道怎么赋到表单域里,查资料知道Struts2的#request['typeNum']或#request.typeNum可以得到request里面的值,但用<s:property value="#request['typeNum']"/>却输不出request里的值,郁闷好几天不知怎么搞,希望大家指点下!! [b]问题补充:[/b] 不行,报异常!而且我还要把值赋到一个表单域里,如:<s:textfield name="productName" value=""/>,问题是怎么把值赋进来???? [b]问题补充:[/b] 报org.apache.jasper.JasperException:/pages/orderList/orderList_right_add.jsp(34,4) According to TLD or attribute directive in tag file, attribute value does not accept any expressions 和java.lang.ClassNotFoundException异常…… [b]问题补充:[/b] out试过了,直接输出到页面是没问题的,但放到<s:textfield name="productName" value="<% out.print('productName')%>"/> 就不行了,value解析不出productName的值,直接把<% out.print('productName')%>输出来了。。。 [b]问题补充:[/b] [quote]<s:textfield name="productName" value="<% out.print('productName')%>"/> 写成 <s:textfield name="productName" value="<%=productName%>"/> 应该可以吧[/quote] 结果是一样的! [quote]是OGNL的表示形式 需要经过action来操控的吧[/quote] 谢谢指出! 难道真得用action实现啊?我再试试…… [b]问题补充:[/b] 不想用Action是因为这里涉及的参数就两个,而且product和orderlist是两个不同的Action,在里面传来传去嫌麻烦,也是为涂省事吧,呵呵,可现在好像并不太省事…… 至于用JavaScript的方法填充表单,本人没用过,能具体到代码吗?谢谢啦!! [b]问题补充:[/b] js的方法我是这么做的: <% String proNum = request.getParameter("typeNum"); String proName = request.getParameter("productName"); [color=red]out.print(proNum+"-----"+proName);[/color] %> <script type="text/javascript"> window.onload = function (){ var parm1 = document.getElementById("proName") parm1.value = ${proName}; var parm2 = document.getElementById("proNum") parm2.value = ${proNum}; } </script> <s:textfield name="productName" id="proName"/> <s:textfield name="orderList.typeNum" id="proNum"/> 可表单域里怎么就是没有值啊!而且在页面上用${proNum}也没值,但上面的out.print(proNum+"-----"+proName);却能输出值,这是怎么回事???? [b]问题补充:[/b] [quote]换成 parm.value = "<%=pramValue%>"试看[/quote]这样的也试过了,就是在页面用<%=pramValue%>或${pramValue}也输入出值…… 不过现在问题还是解决了,还是通过jsp页面-action-jsp页面的方式把值放到request里,在最后的jsp页面用<s:textfield name="orderList.productName" value="%{#request['product.productName']}" />的方式把值最终传过来并赋到了表单的输入域里,还是这位大哥的[quote]是OGNL的表示形式 需要经过action来操控的吧 [/quote]提醒了我,谢谢啦!不知能否留个QQ之类的,以后有问题好请教下,呵呵…… 不过问题是解决了,但跟我最初的jsp页面-jsp页面传值的想法不一样,小有遗憾。。。。。在Struts里是不是根本就没有这样直接传值的方法啊???不知有没有更好的方法。。。。 [b]问题补充:[/b] [quote]<s:textfield name="productName" value="%{#parameters.productName}"/> [/quote] 嗯,这种才应该是Struts2提供的页面到页面传递的方法,也是我想要的,只是这种方法传递中文的时候会乱码不知怎么解决呢。。。
EXT中弹出窗口取父窗口中的变量值
最近自己在做一个东西,前端用的是EXT,也是在自学自用EXT,遇到一个窗口间的参数传递问题,向各位请教一下: 主页面是一个gridpanel(该panel中有一个参数(ID)),点击“新增”弹出一个新窗口(是用EXT.window实现的),新窗口中有一个formpanel,我现在需要的就是在formpanel提交的时候,能够将主页面的gridpanel中的参数ID传到后台,请问我该这么实现?
微信小程序调用云函数,在success里给全局变量赋值,可是没能传递到函数外,请教大神怎么解决?
请大佬们教教我 ``` var list2 Page({ onLoad: function () { wx.cloud.callFunction({ name: "tiku", success(res){ list2 = res.result.word_list console.log(list2)//这里成功打印了res.result.word_list }, fail(res){ console.log("shibai") } }) console.log(list2)// 这里是undefine ```
使用html2canvas截图生成的Base64 参数,传递到后台,解析之后下载的图片和截图的图片不一致问题
**1.描述问题场景** 使用 html2canvas.js 工具,进行局部截图,将获取到的Base64码 利用ajax传递到后台进行解码,并输出到指定目录。 # 2.问题: 在将Base64传递到之后,进行解码后,下载的图片和截取的图片不一致问题。还请各位大佬看下什么原因 # 3.代码 前端: ``` js部分 function jietu() { var gdzherf = ''; html2canvas(document.getElementById("container"),{ useCORS:true, height: $("#container").outerHeight() + 20, width: $("#container").outerWidth() + 20 , onrendered : function (canvas) { //获取Base64码 gdzherf = canvas.toDataURL(); $("#base64Name").val(gdzherf); $("#mmg").attr("src",gdzherf); //去下载 $.ajax({ type : "post", url : "${basePath}moduleFile/downloadCanvas?gdzherf="+gdzherf, dataType : "json", success : function (data) { } }) } }) }; <div id="container" style="color: #FF0000;display: inline-block; width: 300px;height: 120px" > <div class="text">&nbsp;&nbsp;&nbsp;此<span class="sp">&nbsp;</span>页复印于我馆 </div> <div class="text"> <div class="qq"> 全宗<span id="FONDS_CODE" class="sp" style="display:block"></span> 目录<span id="CATALOGUE_NO" class="sp"></span> &nbsp;案卷 <span id="FOLDER_NO" class="sp"></span> 第<span id="PAGE_NO" class="sp"></span>页 </div> </div> <div class="text date"> 上海市xxxx档案证明专用章 </div> <div class="date"> <span id="year"></span>年<span id="month"></span>月<span id="day"></span>日 </div> </div> <a onclick="jietu()" class="easyui-linkbutton" style="width:80px">截图</a> ``` ## 产生的效果: ![前端效果](https://img-ask.csdn.net/upload/201904/29/1556503354_805590.png) 再次验证: ![再次去验证](https://img-ask.csdn.net/upload/201904/29/1556503399_168853.png) **结论:拿到前端获取的Base64数据去转换,与预期想的一致,没有问题** ## 4.现在用我的后台代码进行解码,图片与预期不符合 ``` public void download(HttpServletRequest request) throws IOException { String gdzherf = request.getParameter("gdzherf").replace("data:image/png;base64,",""); // Base64码 BASE64Decoder decoder = new BASE64Decoder(); byte[] bs = decoder.decodeBuffer(gdzherf);//解密 //生成到目标路径 for(int k=0;k<bs.length;++k) { if(bs[k]<0) {//调整异常数据 bs[k]+=256; } } String path = "C:\\Users\\Cc\\Desktop\\对比gc\\截图.png"; OutputStream out = out = new FileOutputStream(path); out.write(bs); out.flush(); out.close(); } ``` **下图是: 通过获取到的Base64 参数 下载的图片** ![图片说明](https://img-ask.csdn.net/upload/201904/29/1556503979_78757.png) ![打开结果](https://img-ask.csdn.net/upload/201904/29/1556503995_257195.png) 可以看出,**自己解码下载的文件,与前端截图的问题是不一致的**,我自己猜想是**参数传递参数问题**,我把**前端生成的Base64代码 拷贝到后台直接进行解码获取到的图片就是我想要的结果**, 问题应该就是出在传递参数过程中,不知各位有什么好的解决方法码?<br/> **下图是通过前端拷贝的Base64,在后台直接解码出来的图片**: ![图片说明](https://img-ask.csdn.net/upload/201904/29/1556504515_820700.png) 还请教各位如何处理这个Base64 参数问题,如果是因为其它问题,还请不吝赐教,谢谢各位 ------------------------------------- 现在本机自己的项目 获取的图片与前端生成的图片一致了。但是如果放到公司的项目中,则就出现了下面的情况,不知道原因是啥? 如图: ![图片说明](https://img-ask.csdn.net/upload/201904/29/1556522244_60398.png)
请教EXT窗口参数问题
<p><span style="white-space: pre;"> </span>最近自己在做一个东西,前端用的是EXT,也是在自学自用EXT,遇到一个窗口间的参数传递问题,向各位请教一下:</p> <p><span style="white-space: pre;"> </span>主页面是一个gridpanel(该panel中有一个参数(ID)),点击“新增”弹出一个新窗口(是用EXT.window实现的),新窗口中有一个formpanel,我现在需要的就是在formpanel提交的时候,能够将主页面的gridpanel中的参数ID传到后台,请问我该这么实现?</p>
js使用xmlhttp post到jsp的问题
在两个域间使用cookie来传递参数,网站A post请求到网站B 的 setCookie.jsp,将参数用cookie报错到B的域中.让B可以取得参数. 返回参数的时候类似. 但是在post的时候,总是提示"拒绝访问",不知道是不是有限制?不能将这种post提交到jsp吗? 换用get的时候也有类似的问题...请教. [b]问题补充:[/b] 为什么form的submit这种跳转就可以? 用js不能模拟这种吗?但是不想产生url的跳转 不知道form 的submit 和xmlhttp 的post, 有什么区别
求教web前端开发钟遇到的数据传递问题
请教下各位 在此先谢谢了大家了 本人毕业于北大青鸟 半道子出家爱好前端 工作一年时间了 一直处于不断学习阶段 最近非常疑惑 因为在一直在一家网站建设公司任职web前端开发 公司接的项目都是展示型网站 一个项目也就一二十个页面 主要用jquery,html5,css3开发。着重页面炫酷效果这一块。最近看到ext.js,node.js 看着云里雾里 我现在的工作就是切片写页面 对于数据传输一点都没接触(php后台做了,数据也不是很多),我在想为了以后发展 数据这一块我是肯定要接触的 我现在就是疑惑为什么要用ext.js,node.js等东西来进行web前端开发,主要用他们来干些什么。才注册的好 唯一5c币奉上 ,谢谢了。
ExtJS3.2,如何为Checkbox的未选中状态赋值?
昨天的问题依然没有得到解决…… 大家都知道,ExtJS的Checkbox在未选中状态是没有任何值可以传递的,只有在选中状态时后台才可以获得一个"on"的值。 我这两天尝试使用hidden域来为checkbox的未选中状态赋予一个false值以便传递到后台来进行逻辑处理,但是后台依然报“未将实例引用设置到对象实例”的错误。 请教大家是如何处理checkbox未选中状态赋值问题的? 我的错误代码如下: [code="js"] { xtype: 'hidden', name: 'splSKUCheckbox', inputValue: "false" }, { xtype: 'checkbox', id: 'splSKUCheckbox', name: 'splSKUCheckbox', fieldLabel: '*装箱', listeners: { check: function(obj, checked) { if (checked) { Ext.getCmp('skulength').setDisabled(false); Ext.getCmp('skuwidth').setDisabled(false); Ext.getCmp('skuheight').setDisabled(false); } else { Ext.getCmp('skulength').setDisabled(true); Ext.getCmp('skuwidth').setDisabled(true); Ext.getCmp('skuheight').setDisabled(true); } } } }, { xtype: 'numberfield', id: 'skulength', name: 'splSKULength', disabled: true, fieldLabel: '长度', emptyText: '000.000' }, { xtype: 'numberfield', id: 'skuwidth', name: 'splSKUWidth', disabled: true, fieldLabel: '宽度', emptyText: '000.000' }, { xtype: 'numberfield', id: 'skuheight', name: 'splSKUHeight', disabled: true, fieldLabel: '高度', emptyText: '000.000' } [/code]
java传递json,接收时异常CharConversionException。
String url="/UEAnalyze/BaoZhang.do?bzApply&jsonarray="+jsonarr1+"&jsonarray2="+jsonarr2; 其中jsonarray2有问题(其值类似:{"1":"主营业务成本-网络运行成本-外购动力费-IDC机房"}) 跳转方式:response.sendRedirect(url); 接收:String jsonarray2 = request.getParameter("jsonarray2");此时报错: java.io.CharConversionException: isHexDigit at org.apache.tomcat.util.buf.UDecoder.convert(UDecoder.java:87) 而BaoZhang.do的另一个入口:(js)window.location.href = "/UEAnalyze/BaoZhang.do?bzApply&jsonarray="+jarr1+"&jsonarray2="+jarr2;则没有问题。 请教这是怎么回事?
JSP搜索联想框,新手求指教。
不是用的SSH框架,DAO用JDBC,项目赶工,DAO和Service整合在了一起,我是半路插入的~各位大神先别吐槽……咱先把问题解决再美化~谢谢 页面结构如下 ``` <input name="accountName" id="accountName" class="yhgl_ser required inputElem" onkeyup="getLinkData();" value="<%StringHelper.filterHTML(out, request.getParameter("accountName"));%>" /> <div id="popup" style="position: absolute;"> <table width="100%" bgcolor="#fffafa"> <tbody id="popupBody"></tbody> </table> </div> ``` JS代码如下(借鉴了很多网上的JS方法) ``` <script type="text/javascript"> function getLinkData() { var popupDiv = document.getElementById("info");//获得对应的div对象 var popupBody = document.getElementById("popupBody");//获得对应的tbody对象 var linkDataProperty = document.getElementById("accountName"); //获得对应的输入框对象 clearModels();//清除联想输入提示框的内容 //利用ajax获取后台的模糊查询的数据,并且封装成下拉列表的形式展现出来 $.ajax({ type : "post",//提交的方法为post //对应的Action提交的路径 url : "<%configureProvider.format(out, URLVariable.SEARCH_ACCOUNT);%>", data:{linkDataProperty:linkDataProperty.value},//从前台传递到后台的查询语句的参数 dataType : "json", //从Action中返回的数据的类型为json类型的 error:function(){ alert("没有对应的数据,请查看输入的查询条件!"); }, success : function(data) {//当Ajax提交成功时调用的方法 if(data.length==0){return;} setOffsets();//设置联想输入下拉列表提示框的位置 var tr,td,text; for (var i = 0; i < data.length; i++) {//根据返回的值,手动的拼tbody的内容 text = document.createTextNode(data[i].linkDataProperty);//从Action中返回的数据中取出linkDataProperty的值 td = document.createElement("td");//创建一个td的对象 tr = document.createElement("tr");//创建一个tr的对象 td.mouseOver = function(){this.className="mouseOver;"}; td.mouseOut = function(){this.className="mouseOut;"}; td.onclick = function(){populateModel(this)};//单击td是的方法为populateModel td.appendChild(text); tr.appendChild(td); popupBody.appendChild(tr); } }}); //点击下拉列表中的某个选项时调用的方法 function populateModel(cell) { clearSelect(); linkDataProperty.value = cell.firstChild.nodeValue; //initOtherData(linkDataProperty.value);利用输入框中的数据调用其他方法,初始化其他数据 clearModels();//清除自动完成行 } //清除自动完成行,只要tbody有子节点就删除掉,并且将将外围的div的边框属性设置为不可见的 function clearModels() { while (popupBody.childNodes.length > 0) { popupBody.removeChild(popupBody.firstChild); } popupDiv.style.border = "none"; } //设置下拉列表的位置和样式 function setOffsets() { var width = linkDataProperty.offsetWidth;//获取linkDataProperty输入框的相对宽度 var left = getLeft(linkDataProperty); var top = getTop(linkDataProperty) + linkDataProperty.offsetHeight; popupDiv.style.border = "black 1px solid"; popupDiv.style.left = left + "px"; popupDiv.style.top = top + "px"; popupDiv.style.width = width + "px"; } //获取指定元素在页面中的宽度起始位置 function getLeft(e) { var offset = e.offsetLeft; if (e.offsetParent != null) { offset += getLeft(e.offsetParent); } return offset; } //获取指定元素在页面中的高度起始位置 function getTop(e) { var offset = e.offsetTop; if (e.offsetParent != null) { offset += getTop(e.offsetParent); } return offset; } } //清空输入框中的数据 function clearSelect() { var linkDataProperty=document.getElementById(linkDataProperty); linkDataProperty.value=""; } </script> ``` Servlet代码如下 ``` protected void processPost(HttpServletRequest request, HttpServletResponse response, ServiceSession serviceSession) throws Throwable { //往后传数据 System.out.println("进入servlet,将传入后台:"+request.getParameter("accountName")); //获得DAO服务 ZhglManage manage = serviceSession.getService(ZhglManage.class); //获得前台数据并往后台发送,同时接收返回的结果 String accounts = manage.searchAccountInOneResult(request.getParameter("accountName")); //往前端发送 PrintWriter out = response.getWriter(); System.out.println("返回servlet,即将返回获得的结果:"+accounts+" 给页面"); out.print(accounts); out.close(); } ``` DAO加Service代码如下: ``` public String searchAccountInOneResult(String inputing) throws Throwable { //尝试了Gson但也没成功 Gson gson = new Gson(); System.out.println("进入DAO,传入的参数是:"+inputing); //map方式 Map<String, String> rsMap = new HashMap<String,String>(); String account = ""; String key = ""; //获得连接 Connection conn = getConnection(); //准备SQL语句,获得单列账号信息 String sql = "SELECT @ROW := @ROW +1 AS ROW , t.F02 AS accountName FROM S61.T6110 t, ( SELECT @ROW :=0 )r WHERE t.F02 LIKE '"+inputing+"%' LIMIT 10"; PreparedStatement pstm = conn.prepareStatement(sql); //执行SQL ResultSet rs = pstm.executeQuery(); //获得结果 while(rs.next()){ //map方式 key = rs.getString("accountName"); account = rs.getString("accountName"); rsMap.put(key, account); } String temp = gson.toJson(rsMap); System.out.println("正在打印gson:"+temp); return temp; } ``` 然后控制台是这样的 进入servlet,将传入后台:1 进入DAO,传入的参数是:1 正在打印gson:{"12342@qq.com":"12342@qq.com","12344@qq.com":"12344@qq.com","100@qq.com":"100@qq.com"} 返回servlet,即将返回获得的结果:{"12342@qq.com":"12342@qq.com","12344@qq.com":"12344@qq.com","100@qq.com":"100@qq.com"} 给页面 firefox控制台和页面效果是这样的 ![图片说明](https://img-ask.csdn.net/upload/201505/18/1431943341_591979.png) 我对JS什么的不怎么懂,来请教下各位我哪里有问题,解决方法或者说解决思路应该是怎样的
怎样将EditorGridPanel更改后的数据提交给后台
最近在做的一个项目里需要编辑表格并提交,想请教各位大大几个问题,控制层使用springMVC,引入了json 1.是将EditorGridPanel放在formpanel里整体提交还是每次更改数据后触发提交事件 2.如果整体提交,数据以什么形式提交?是否需要在页面先进行处理后再提交? 3.提交到后台的数据是什么形式?后台怎样获得这个整体提交的EditorGridPanel中的数据? 4.后台传递给页面的数据我使用json进行转换,我猜页面传递来的数据是否是json字符串?然后再转换成java类? 如果能有一些代码说明小弟不胜感激! [b]问题补充:[/b] 怎样把EditorGridPanel中的数据在页面转换成json字符串?大大们给段代码看看行不?
请教使用FormData向服务器发送不了数据。 代码如下:
``` <!doctype html> <html> <head> <meta charset="utf-8"> </head> <body> <p><span id="A1"></span></p> <button onclick="sendformdata()">发送数据</button> <script type="text/javascript"> var xmlhttp; function sendformdata() { if (window.XMLHttpRequest) { // Mozilla 浏览器 //新建XMLHttpRequest对象 xmlhttp = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE 浏览器 try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { } } } if (xmlhttp!=null) { var formData = new FormData(); formData.append('username','lee'); formData.append('usercity','beijing'); xmlhttp.onreadystatechange=state_Change; xmlhttp.open('POST','showinfo.asp'); xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); xmlhttp.send(formData); } else { alert("您的浏览器不支持 XMLHTTP."); } } function state_Change() { if (xmlhttp.readyState==4) // 服务器已经响应 { if (xmlhttp.status==200) // 请求成功 { // 显示服务器的响应数据 document.getElementById('A1').innerHTML=xmlhttp.responseText; } else { alert("接收XML数据时出现问题:" + xmlhttp.statusText); } } } </script> </body> </html> 后台showinfo.asp 接收数据并显示 showinfo.asp 的代码如下: <%@LANGUAGE="VBSCRIPT" codepage="65001"%> <% username=request.form("username") usercity=request.form("usercity") response.write "名字:" & username&"<br>" response.write "城市:" & username&"<br>" %> 执行完第一个程序后,显示不出来传递的数据:lee 和Beijing 请教了,谢谢!!! ```
当网页采用js动态获取数据时,HttpClient应如何获取数据?
总的问题是这样的:因为我需要在两个城市来回跑,但是机票价格不断变化,就想通过.NET的HttpClient对携程网的网页进行访问,定时为每几小时一次,然后在后台进行一下分析,当某个机票价格贴近预期的最低价的时候通知我。 我用的VB.NET,但是C#应该更广泛,如果哪位大神可以帮忙回答用C#就可以。 代码如下,我先写了一个类 ``` Imports System.IO Imports System.Net.Http Public Class MySpider Dim callback As CallBackSub Public Sub CallBackTo(ByVal callclass As CallBackSub) callback = callclass End Sub Public Shared Async Sub GetPage(ByVal url As String, ByVal callclass As CallBackSub) Dim MyHttpClient As New HttpClient() Dim str As String = Await GetStringFromUrl(url) Dim callback0 As CallBackSub = callclass callback0.Invoke(str) End Sub Private Shared Async Function GetStringFromUrl(ByVal Url As String) As Task(Of String) Using client As HttpClient = New HttpClient() Try Dim response As HttpResponseMessage = Await client.GetAsync(Url) response.EnsureSuccessStatusCode() Dim responseBody As String = Await response.Content.ReadAsStringAsync() Return responseBody Catch e As HttpRequestException Console.WriteLine(vbLf & "Exception Caught!") Console.WriteLine("Message :{0} ", e.Message) Return Nothing End Try End Using End Function End Class ``` 这个类中的GetStringFromUrl是微软给的例程,然后我用了一个委托来把获取的字符串传递给Form窗体。(我的.NET仅仅勉强入门,正准备task和线程这些,就姑且用委托了,如果有正确的处理方法还麻烦告诉一下) 窗体代码就不贴出来了,就是一个textbox用来接收委托传过去的数据,然后一个button控制getpage 然后问题就在于,我发现我取出response中的数据后,根本找不到机票价格 ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548767543_874475.jpg) 然后我在浏览器中把网页保存了之后,发现里面有很多js和css文件,我就想是不是有些数据是通过js动态获取的。 最后我试了Windows窗体控件WebBroswer,在赋值了URL之后,仅仅这一句代码就得到了我想要的机票价格数据 ``` TextBox1.Text = WebBrowser1.Document.All(1).InnerText ``` ![图片说明](https://img-ask.csdn.net/upload/201901/29/1548767560_985205.png) 虽然问题可以说暂时解决,但是我还是觉得,HttpClient作为微软推荐使用的一个类,应该不会处理不了这种动态获取数据的情况,就想请教下各位使用.NET得前辈,是否可以用HttpClient类处理这个问题呢? 如果能给出代码我会感激不尽,如果给一个资料的链接也一样很感谢!
如何在servlet里提取别人直接传过来的url里带中文和#的地址?
别人调用我们提供的MsgManager.do这个servlet来向我们传递数据,地址格式如下: /MsgManager.do?user=aa&password=aa&txflag=1&tel=13618668888&sendtime=2009-06-17#14:33:47&msg=306测试 请教一下如何能在MsgManager.do这个servlet里提取这个地址并进行分析,从而获取里面的参数 关键是里面带的有#号和中文 我们整个网站都用的编码过滤器,统一的“utf-8” 只要能提取这个地址的方法就可以,分析的工作我们可以做,我现在用request.getQueryString()和request.getHeader("Referer")都提不出这个地址,何解? 谢谢 [b]问题补充:[/b] 里面的测试代码: msg=request.getParameter("msg"); tel=request.getParameter("tel"); txflag=request.getParameter("txflag"); sendtime=request.getParameter("sendtime"); System.out.println(msg); System.out.println(tel); System.out.println(txflag); System.out.println(sendtime); 得到的结果: null 13618668888 1 2009-06-17 我如果这样传(去掉#号): /MsgManager.do?user=aa&password=aa&txflag=1&tel=13618668888&sendtime=2009-06-1714:33:47&msg=306测试 得到: null[color=red]--------------msg还是为空[/color] 13618668888 1 2009-06-1714:33:47 如果去掉(#号和中文): /MsgManager.do?user=aa&password=aa&txflag=1&tel=13618668888&sendtime=2009-06-1714:33:47&msg=306 得到: 306 13618667017 1 2009-06-1714:33:47 [b]问题补充:[/b] 至于peday朋友说的,我也分析过,没有自己想要的数据: Enumeration names=request.getHeaderNames(); while(names.hasMoreElements()) { String tt=(String)names.nextElement(); System.out.println(request.getHeader(tt); } 结果为: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/x-silverlight, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */ zh-cn x86 gzip, deflate Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1) localhost:8080 Keep-Alive cnzz_a1385362=3; vw1385362=%3A13428861%3A26446058%3A29578610%3A; sin1385362=http%3A//localhost%3A8080/; rtime=3; ltime=1245372363718; cnzz_eid=86227953-1245110629-http%3A//localhost%3A8081/; user_detail=1-E10ADC3949BA59ABBE56E057F20F883E; JSESSIONID=a4XOF87Ktvu59Xwd2h [b]问题补充:[/b] 我本来建议他们对传递过来的数据格式改动一下,他们那边说“我们对所有的人”都是提供这样的格式,然我们自己解决,唉,没办法,请大家看看 [b]问题补充:[/b] 我们提供的地址他们是远程调用的,调用的过程中我们还要在MsgManager.do里给他们返回一个状态(0:成功 1:失败)。 [b]问题补充:[/b] [color=darkred]to:lovewhzlq [/color] System.out.println(request.getQueryString()); 我也实验过,但是得到的数据从#号那就断了,郁闷 这是结果: user=aa&password=aa&txflag=1&tel=13618668888&sendtime=2009-06-17 [b]问题补充:[/b] 我刚想了个办法,就是新建一个中转的jsp文件,然后让这个文件用js对地址进行分析,然后再传给MsgManager.do: <%@ page contentType="text/html;charset=utf-8" language="java" %> <script type="text/javascript"> function jumpUrl() { var the_url=location.href; var p=the_url.indexOf("msg="); var temp; if(p!=-1) { temp=the_url.substring(0,p)+"msg="+escape(the_url.substring(p+4)); } var que_str=temp.substring(temp.indexOf("?")); que_str=que_str.replace("#","-"); //alert("/MsgManager.do"+que_str); location.href="/MsgManager.do"+que_str; } jumpUrl(); </script> 但是这样我就不知道他们远程那能否调用到我在MsgManager.do中返回的值?这个方法写了,但是还没有和他们沟通,我直接用ajax调用了一下,得不到值,出现了远程调用的权限问题 [b]问题补充:[/b] [quote] 那用这个方法 public ServletInputStream getInputStream() 得到这个流,读取出来解析 lovewhzlq (资深架构师) [/quote] 这个方法还没有实验,过会再上来提交结果,谢谢你的关注 [b]问题补充:[/b] 我实验两种方法,好像都取不出值,ContentLength得到的是-1,是我写的代码有问题,还是别的原因?request.getInputStream()好像应该在form提交的时候设置enctype="multipart/form-data"的时候才有用吧,我记得我以前写上传控件的时候用到过这个方法 第一种: [code="java"]System.out.println("内容长度为:"+request.getContentLength()); BufferedReader in=request.getReader(); String temp; while((temp=in.readLine())!=null) { System.out.println(temp+"########"); } in.close();[/code] 第二种: [code="java"]System.out.println("内容长度为:"+request.getContentLength()); byte[] buffer = new byte[1024]; ServletInputStream in=request.getInputStream(); String temp=""; int flag=0; while((flag=in.readLine(buffer,flag,1024))!=-1) { temp=temp+new String(buffer,"utf-8"); System.out.println(temp+"########"); } in.close();[/code] [b]问题补充:[/b] public Enumeration getHeaders(String name)不论我name传哪个头都无法得到完整的url,关键是他们在地址里面还加了个#号,#号在地址中也是一个特殊符号,指向锚点用的,我都晕了,getQueryString()又无法得到#号以后的数据。 他们地址也不编码,还说别人都用的好好的,就我们这有问题。 别的语言我没接触过,但是我这是已经想了很多办法了,都解决不了。 如果只是简单的出现乱码问题我都没有这么烦了,郁闷中…… [b]问题补充:[/b] 唯一能用的就是那个用中转页面调用js,然后对地址编码后再传递,不知道大家还有什么好的方法没有 [b]问题补充:[/b] 他们主要是做短信的,现在是希望我们提供一个接口,用户短信是直接发到他们平台,然后他们再调用我们提供的接口将信息转发过来,发送过来的信息格式就是以上讨论半天的那个地址,有#号和中文 我现在只能让我朋友用php或者别语言来试试,看看可以弄不。 关键是时间紧,不然我就重新找一个有开发api的服务商来合作了,没办法。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、PDF搜索网站推荐 对于大部
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
Vue + Spring Boot 项目实战(十四):用户认证方案与完善的访问拦截
本篇文章主要讲解 token、session 等用户认证方案的区别并分析常见误区,以及如何通过前后端的配合实现完善的访问拦截,为下一步权限控制的实现打下基础。
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入  假设现有4个人
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
写在前面: 我是 扬帆向海,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的。 这博客是对自己学习的一点点总结及记录,如果您对 Java、算法 感兴趣,可以关注我的动态,我们一起学习。 用知识改变命运,让我们的家人过上更好的生活。 目录一、杨辉三角的介绍二、杨辉三角的算法思想三、代码实现1.第一种写法2.第二种写法 一、杨辉三角的介绍 百度
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
SQL-小白最佳入门sql查询一
一 说明 如果是初学者,建议去网上寻找安装Mysql的文章安装,以及使用navicat连接数据库,以后的示例基本是使用mysql数据库管理系统; 二 准备前提 需要建立一张学生表,列分别是id,名称,年龄,学生信息;本示例中文章篇幅原因SQL注释略; 建表语句: CREATE TABLE `student` ( `id` int(11) NOT NULL AUTO_INCREMENT, `
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // dosho
漫话:什么是平衡(AVL)树?这应该是把AVL树讲的最好的文章了
这篇文章通过对话的形式,由浅入深带你读懂 AVL 树,看完让你保证理解 AVL 树的各种操作,如果觉得不错,别吝啬你的赞哦。 1、若它的左子树不为空,则左子树上所有的节点值都小于它的根节点值。 2、若它的右子树不为空,则右子树上所有的节点值均大于它的根节点值。 3、它的左右子树也分别可以充当为二叉查找树。 例如: 例如,我现在想要查找数值为14的节点。由于二叉查找树的特性,我们可...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,
程序员:我终于知道post和get的区别
IT界知名的程序员曾说:对于那些月薪三万以下,自称IT工程师的码农们,其实我们从来没有把他们归为我们IT工程师的队伍。他们虽然总是以IT工程师自居,但只是他们一厢情愿罢了。 此话一出,不知激起了多少(码农)程序员的愤怒,却又无可奈何,于是码农问程序员。 码农:你知道get和post请求到底有什么区别? 程序员:你看这篇就知道了。 码农:你月薪三万了? 程序员:嗯。 码农:你是怎么做到的? 程序员:
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU
开源并不是你认为的那些事
点击上方蓝字 关注我们开源之道导读所以 ————想要理清开源是什么?先要厘清开源不是什么,名正言顺是句中国的古代成语,概念本身的理解非常之重要。大部分生物多样性的起源,...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
      11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI 算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下
《C++ Primer》学习笔记(六):C++模块设计——函数
专栏C++学习笔记 《C++ Primer》学习笔记/习题答案 总目录 https://blog.csdn.net/TeFuirnever/article/details/100700212 —————————————————————————————————————————————————————— 《C++ Primer》习题参考答案:第6章 - C++模块设计——函数 文章目录专栏C+...
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
面试官如何考察你的思维方式?
1.两种思维方式在求职面试中,经常会考察这种问题:北京有多少量特斯拉汽车? 某胡同口的煎饼摊一年能卖出多少个煎饼? 深圳有多少个产品经理? 一辆公交车里能装下多少个乒乓球? 一
so easy! 10行代码写个"狗屁不通"文章生成器
前几天,GitHub 有个开源项目特别火,只要输入标题就可以生成一篇长长的文章。背后实现代码一定很复杂吧,里面一定有很多高深莫测的机器学习等复杂算法不过,当我看了源代码之后这程序不到50
知乎高赞:中国有什么拿得出手的开源软件产品?(整理自本人原创回答)
知乎高赞:中国有什么拿得出手的开源软件产品? 在知乎上,有个问题问“中国有什么拿得出手的开源软件产品(在 GitHub 等社区受欢迎度较好的)?” 事实上,还不少呢~ 本人于2019.7.6进行了较为全面的 回答 - Bravo Yeung,获得该问题下回答中得最高赞(236赞和1枚专业勋章),对这些受欢迎的 Github 开源项目分类整理如下: 分布式计算、云平台相关工具类 1.SkyWalk
相关热词 c# 图片上传 c# gdi 占用内存 c#中遍历字典 c#控制台模拟dos c# 斜率 最小二乘法 c#进程延迟 c# mysql完整项目 c# grid 总行数 c# web浏览器插件 c# xml 生成xsd
立即提问