Questions tagged «javascript»

有关在ECMAScript(JavaScript / JS)及其各种方言/实现(不包括ActionScript)中进行编程的问题。此标记很少单独使用,但最常与标记[node.js],[jquery],[json]和[html]关联。



4
在ng-init中声明多个值
因此,我想知道如何在单个ng-init中声明多个值,而不必创建一些怪异的哈希,那么我需要始终专门进行访问。 所以基本上我想 <div ng-init="a = 1, b = 2">{{a}}</div> 我是说我想避免做 <div ng-init="unecessary_bs = {a: 1, b: 2}">{{unecessary_bs.a}}</div> 但是合理的: <div ng-init="a = 1, b = 2">{{a}}</div> 似乎不起作用。 预期的感谢


4
(1,eval)('this')vs eval('this')在JavaScript中?
我开始阅读JavaScript模式,一些代码使我感到困惑。 var global = (function () { return this || (1, eval)('this'); }()); 这是我的问题: Q1: (1, eval) === eval? 为什么以及如何运作? Q2:为什么不只是 var global = (function () { return this || eval('this'); }()); 要么 var global = (function () { return this; }());
85 javascript  eval 

5
创建一个“ Hello World” WebSocket示例
我不明白为什么我无法使以下代码正常工作。我想用JavaScript连接到服务器控制台应用程序。然后将数据发送到服务器。 这是服务器代码: static void Main(string[] args) { TcpListener server = new TcpListener(IPAddress.Parse("127.0.0.1"), 9998); server.Start(); var client = server.AcceptTcpClient(); var stream = client.GetStream(); while (true) { var buffer = new byte[1024]; // wait for data to be received var bytesRead = stream.Read(buffer, 0, buffer.Length); var r = System.Text.Encoding.UTF8.GetString(buffer); // write received …

5
防止在Node.js中进行SQL注入
是否有可能以与PHP具有防止它们攻击的Prepared语句相同的方式来防止在Node.js(最好是使用模块)中进行SQL注入。 如果是这样,怎么办?如果没有,那么有哪些示例可以绕过我提供的代码(请参见下文)。 一些上下文: 我正在使用node-mysql模块制作一个包含Node.js + MySql的后端堆栈的Web应用程序。从可用性的角度来看,该模块很棒,但是它尚未实现类似于PHP的Prepared Statements的功能(尽管我知道它在待办事项上)。 据我了解,PHP对预准备语句的实现以及其他方面极大地有助于防止SQL注入。不过,我担心我的node.js应用程序可能会遭受类似的攻击,即使默认情况下提供了字符串转义(如下面的代码片段)。 node-mysql似乎是node.js最受欢迎的mysql连接器,所以我想知道其他人可能正在做些什么(如果有的话)来解决这个问题-甚至从头开始它甚至是node.js的问题(由于涉及到用户/客户端输入,因此不确定如何实现)。 我是否应该暂时切换到node-mysql-native,因为它确实提供了准备好的语句?我很犹豫,因为它似乎不像node-mysql那样活跃(尽管这可能意味着它已经完成了)。 这是用户注册代码的一部分,该代码使用了sanitizer模块,以及node-mysql预先准备的类似于语句的语法(如上所述,它进行字符转义),以防止跨站点脚本和sql注入: // Prevent xss var clean_user = sanitizer.sanitize(username); // assume password is hashed already var post = {Username: clean_user, Password: hash}; // This just uses connection.escape() underneath var query = connection.query('INSERT INTO users SET ?', post, function(err, results) { // …

4
在Redux Reducer中读取商店的初始状态
Redux应用程序中的初始状态可以通过两种方式设置: 将其作为第二个参数传递给createStore(docs link) 将其作为第一个参数传递给您的(子)还原器(docs链接) 如果将初始状态传递给商店,您如何从商店读取该状态并将其作为化简器中的第一个参数?

7
获取SVG元素的宽度/高度
获取svg元素尺寸的正确方法是什么? http://jsfiddle.net/langdonx/Xkv3X/ Chrome 28: style x client 300x100 offset 300x100 IE 10: stylex client300x100 offsetundefinedxundefined FireFox 23: "style" "x" "client" "0x0" "offset" "undefinedxundefined" 在上有width和height属性svg1,但.width.baseVal.value仅当我在元素上设置width和height属性时才设置。 小提琴看起来像这样: 的HTML <svg id="svg1" xmlns="http://www.w3.org/2000/svg" version="1.1"> <circle cx="50" cy="50" r="40" stroke="black" stroke-width="1" fill="red" /> <circle cx="150" cy="50" r="40" stroke="black" stroke-width="1" fill="green" /> <circle cx="250" cy="50" r="40" …
85 javascript  svg 


3
测试空的jQuery选择结果
说我同意 var s = $('#something'); 接下来,我要测试jQuery是否发现了#something,即我想测试jQuery是否s为空。 我可以isempty()对它使用信任: function isempty(o) { for ( var i in o ) return false; return true; } 或者由于jQuery对象是数组,我想我可以进行测试s.length。 但是,在jQuery的习语中似乎都没有,在jQueryesque中不是。你有什么建议?

1
如何从内部拒绝承诺然后起作用
这可能是一个愚蠢的问题,但是在诺言链中间,您如何从then函数之一内部拒绝诺言呢?例如: someActionThatReturnsAPromise() .then(function(resource) { return modifyResource(resource) }) .then(function(modifiedResource) { if (!isValid(modifiedResource)) { var validationError = getValidationError(modifiedResource); // fail promise with validationError } }) .catch(function() { // oh noes }); 不再引用原始的解析/拒绝函数或PromiseResolver。我应该补充return Promise.reject(validationError);吗?

3
需要来自Underscore.js的_.bindAll()函数的解释
我一直在学习一些ribs.js,并且已经看到很多使用实例_.bindAll()。我已经通读了整张骨架.js和underscore.js文档页面,以试图了解它的功能,但是对于它的功能我仍然很模糊。这是下划线的说明: _.bindAll(object, [*methodNames]) 在方法名称上指定的对象上绑定许多方法,以便在调用它们时在该对象的上下文中运行。对于将用作事件处理程序的绑定函数非常方便,否则将使用相当无用的this来调用它们。如果未提供methodNames,则该对象的所有函数属性都将绑定到它。 var buttonView = { label : 'underscore', onClick : function(){ alert('clicked: ' + this.label); }, onHover : function(){ console.log('hovering: ' + this.label); } }; _.bindAll(buttonView); jQuery('#underscore_button').bind('click', buttonView.onClick); => When the button is clicked, this.label will have the correct value... 如果您可以在此举另一个例子或一些口头解释来帮助您,那么您将不胜感激。我尝试搜索更多的教程或示例,但没有找到可以满足我需要的内容。大多数人似乎只知道它会自动执行...

3
:touch CSS伪类或类似的东西?
我正在尝试制作一个按钮,以便用户单击它时,按住鼠标按钮时它会更改其样式。如果在移动浏览器中触摸它,我也希望它以类似的方式更改其样式。对我来说,看似显而易见的事情是使用CSS:active伪类,但这没有用。我尝试了:focus,但是也没有用。我尝试:hover,它似乎起作用了,但是当我将手指从按钮上移开后,它仍然保持了样式。所有这些观察都是在iPhone 4和Droid 2上进行的。 是否有任何方法可以在移动浏览器(iPhone,iPad,Android和希望其他浏览器)上复制效果?现在,我正在做这样的事情: <style type="text/css"> #testButton { background: #dddddd; } #testButton:active, #testButton.active { background: #aaaaaa; } </style> ... <button type="button" id="testButton">test</button> ... <script type='text/javascript' src='http://code.jquery.com/jquery-1.6.1.min.js'></script> <script type='text/javascript'> $("*").live("touchstart", function() { $(this).addClass("active"); }).live("touchend", function() { $(this).removeClass("active"); }); </script> :active伪类适用于桌面浏览器,而活动类适用于触摸式浏览器。 我想知道是否有一种更简单的方法,而无需涉及Javascript。

9
如何在文本框中使用onchange()事件获取旧值
页面加载时,我有一个文本框和一个值填充在其中。现在,如果用户在文本框中更改任何内容,那么我想获取更改后的值(新值)和旧值,但是当我执行ELEMENT.value时,它仅给出更改后的值 有任何获得旧价值的建议吗? 下面是我的代码 <head> <script type="text/javascript"> function onChangeTest(changeVal) { alert("Value is " + changeVal.value); } </script> </head> <body> <form> <div> <input type="text" id="test" value ="ABS" onchange="onChangeTest(this)"> </div> </form> </body> </html> 提前致谢

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.