小编Zha*_*ami的帖子

JSLint突然报道:使用"use strict"的功能形式

我包括声明:

"use strict";
Run Code Online (Sandbox Code Playgroud)

在我的大多数Javascript文件的开头.

JSLint之前从未对此提出过警告.但现在是,说:

使用"use strict"的功能形式.

有谁知道"功能形式"会是什么?

javascript jslint

918
推荐指数
6
解决办法
27万
查看次数

特定推文的Twitter链接的URL

我有一些使用Twitter API获取推文的Javascript.我解析数据并使用jQuery为DOM生成HTML.

我想要显示的一个方面是"查看此推文"链接 - 是的,sorta听起来很傻,但它允许用户获取特定推文的URL.

我正在生成一个带有href的标签.URL的格式如下:

http://twitter.com/{twitter-user-id}/status/{tweet-status-id}
Run Code Online (Sandbox Code Playgroud)

花括号中的内容是从推文中提取的实际数据(不,我不包括大括号).例如:

http://twitter.com/Atechtrader/status/57432099984130050
Run Code Online (Sandbox Code Playgroud)

在操作中发生的是,这适用于一些推文,但不适用于其他推文.对于失败的那些,Twitter服务器响应的内容表明所请求的页面不存在.

难道我做错了什么?

twitter

81
推荐指数
5
解决办法
6万
查看次数

在node.JS中,如何通过require*not*mine(即在某个node_module中)获取已加载的模块的路径

我需要一个通过npm安装的模块.我想访问从属于该模块的.js文件(因此我可以在其中继承一个Constructor方法).我不能(好吧,不想)修改模块的代码,所以没有地方提取它的__dirname.

我知道以下问题,但它是关于获取一个代码控制的模块的路径(因此,__ dirname是解决方案): 在Node.js中,我如何告诉`this`模块的路径?

~~~

更好的方法是获取模块的加载模块信息

node.js

81
推荐指数
4
解决办法
4万
查看次数

JSLint在下划线前缀变量名称中报告"意外悬空"字符

我知道有些人认为存在一个主要的下划线意味着变量是"私有的",这种隐私是虚构的,并且假设这就是为什么JSLint报告带有错误消息的名称.

我在我正在构建的网站上使用Google Analytics.我参考GA的变量,例如"_gaq".

我试图让我的JS代码100%JSLint干净(我不喜欢我的编码风格,因此将与Crockford先生的建议一起).也就是说,我对Google的变量名称无能为力......所以,我想我不能100%"干净".

我在这里发布,以防我误解了消息,并且可以采取一些措施来遵守JSLint的做法.

javascript jslint

73
推荐指数
4
解决办法
3万
查看次数

JSLint报告意外使用'&'和'|' - 我想清理一下

我试图让我的Javascript代码100%JSLint干净.

我有一些JS代码,我从其他地方提取过来创建一个UUID.该代码具有以下行:

s[16] = hexDigits.substr((s[16] & 0x3) | 0x8, 1);
Run Code Online (Sandbox Code Playgroud)

这一行引发JSLint生成两条错误消息:

1) Unexpected use of '&'
2) Unexpected use of '|'
Run Code Online (Sandbox Code Playgroud)

我不明白为什么 - 我很欣赏有关如何重新编码以消除错误消息的建议.

javascript jslint

50
推荐指数
1
解决办法
2万
查看次数

JSLint - 忽略代码段

我有一个巨大的脚本传递JSLint(包括避免所有坏的部分).除了一个延伸,这是一个非常复杂的混淆代码嵌入在更大的上下文中.JSLint对这一部分产生了相当多的抱怨,我想为这段代码选择性地禁用它.我已经选择使用了

  /*jlsint xxx:true/false*/
Run Code Online (Sandbox Code Playgroud)

指令禁用某些微小代码的特定警告,这些代码执行与结构解释相反的操作.

我使用的混淆代码使用了我不知道是否可以禁用的构造.

例如:

for(L=(117.>
Run Code Online (Sandbox Code Playgroud)

导致此消息:

Problem at line 1 character 57: A trailing decimal point can be confused with a dot '117.
Run Code Online (Sandbox Code Playgroud)

当然,我知道我可以清理代码,但它是从混淆器发出的,我真的不想要清理混淆代码!

那么,有没有办法告诉JSLint完全忽略拉伸代码?

我知道这个查询JSLint:控制注释(选择性忽略)但它没有得到解答.

jslint

33
推荐指数
1
解决办法
2万
查看次数

JSlint错误'不要在循环中创建函数'.引出有关Javascript本身的问题

我有一些代码在循环中调用匿名函数,类似于这个伪示例:

for (i = 0; i < numCards; i = i + 1) {
    card = $('<div>').bind('isPopulated', function (ev) {
        var card = $(ev.currentTarget);
        ....
Run Code Online (Sandbox Code Playgroud)

JSLint报告错误"不要在循环中创建函数".我喜欢保持我的代码JSLint干净.我知道我可以将匿名函数移出循环并将其作为命名函数调用.除此之外,这是我的问题:

Javascript解释器是否真的会为每次迭代创建一个函数实例?或者只有一个函数实例"已编译"并且重复执行相同的代码?也就是说,将函数移出循环的JSLint"建议"实际上是否会影响代码的效率?

javascript jslint

28
推荐指数
2
解决办法
9395
查看次数

通过jQuery.ajax在Firefox中加载客户端JSON时出现"格式不正确"的警告

我正在使用jQuery的ajax方法来获取静态JSON文件.数据从本地文件系统加载,因此没有服务器,因此我无法更改MIME类型.

这在Safari中运行良好,但Firefox(3.6.3)报告该文件"格式不正确".我知道并在Stack Overflow上查看了类似的帖子:

使用XMLHttpRequest加载JSON文件时,Firefox中的"格式不正确"错误

我相信我的JSON格式正确:

{
    "_": ["appl", "goog", "yhoo", "vz", "t"]
}
Run Code Online (Sandbox Code Playgroud)

我的ajax电话很简单:

$.ajax({
    url: 'data/tickers.json', 
    dataType: 'json',
    async: true,
    data: null,
    success: function(data, textStatus, request) {
        callback(data);
    }
});
Run Code Online (Sandbox Code Playgroud)

如果我用文档标记包装JSON:

<document>JSON data</document>
Run Code Online (Sandbox Code Playgroud)

正如上面引用的其他Stack Overflow问题中所提到的,ajax调用失败并出现解析错误.

那么:有没有办法在读取客户端JSON文件时避免Firefox警告?

ajax jquery json firefox3.6 mime-types

14
推荐指数
1
解决办法
2万
查看次数

无法使用jQuery设置元标记值

可能重复:
是否可以使用javascript更改页面的元标记?

我正在尝试使用jQuery设置元标记(请不要回答这是没有意义的,因为搜索引擎等等等等......我正在加载调用第三方Javascript函数来检查这些值,例如Tweetmeme和Facebook).

如果我使用:

 $('meta[name=some-name]').attr('content', 'some value');
Run Code Online (Sandbox Code Playgroud)

它确实可以设置现有元标记的值,但如果这样的命名元标记不存在,则不会创建元标记.

如果您有这方面的见解或经验,请回复...

jquery meta-tags

12
推荐指数
3
解决办法
2万
查看次数

JSLint为我的正则表达式报告"不安全^" - 这是什么意思?

我试图让我的Javascript代码100%JSLint干净.

我有一个正则表达式:

 linkRgx = /https?:\/\/[^\s;|\\*'"!,()<>]+/g;
Run Code Online (Sandbox Code Playgroud)

JSLint报道:

 Insecure '^'
Run Code Online (Sandbox Code Playgroud)

是什么使得对字符集的否定使用"不安全"?

regex jslint

9
推荐指数
2
解决办法
4832
查看次数