我注意到,异步加载js文件似乎有一些稍微不同的语法,我想知道两者之间是否存在任何差异,或者它们两者的功能是否相同.我猜它们的工作方式相同,但只是想确保一种方法由于某种原因并不比另一种更好.:)
方法一
(function() {
var d=document,
h=d.getElementsByTagName('head')[0],
s=d.createElement('script');
s.type='text/javascript';
s.src='/js/myfile.js';
h.appendChild(s);
})(); /* note ending parenthesis and curly brace */
Run Code Online (Sandbox Code Playgroud)
方法二(在Facebook的代码中看到这个)
(function() {
var d=document,
h=d.getElementsByTagName('head')[0],
s=d.createElement('script');
s.type='text/javascript';
s.async=true;
s.src='/js/myfile.js';
h.appendChild(s);
}()); /* note ending parenthesis and curly brace */
Run Code Online (Sandbox Code Playgroud) 我正在寻找可以安装在Google App Engine上的电子商务平台.
有什么建议?
谢谢.
我发现设置仲裁属性非常方便,例如:
<a stackoverflowId="123">...</a>
Run Code Online (Sandbox Code Playgroud)
在JavaScript中:
var soId = $selectofA.attr('stackoverflowId'); //jQuery
Run Code Online (Sandbox Code Playgroud)
这是一个好习惯吗?我从来没有遇到过这个问题.
我有两个表:table1,table2.Table1有10列,table2有2列.
SELECT * FROM table1 AS T1 INNER JOIN table2 AS T2 ON T1.ID = T2.ID
Run Code Online (Sandbox Code Playgroud)
我想从table1中选择所有列,从table2中只选择1列.是否可以在不枚举table1中的所有列的情况下执行此操作?
声明标签时是否有绝对路径?
如果我在一个文件夹(一个级别)脚本中有一个aspx页面,这将解决 src="../Scripts/jquery-1.4.1.js" type="text/javascript">
如果我在一个文件夹(两级)脚本中有一个aspx页面,这将解决 src="../../Scripts/jquery-1.4.1.js" type="text/javascript">
如果我在主根脚本中有一个aspx页面,这将解决 src="Scripts/jquery-1.4.1.js" type="text/javascript">
我真的需要为每个相对路径创建不同的版本吗?
我对基于事件的编程很新(使用node.js).我相信有些东西我只是不喜欢它,因为有一个特殊的问题,我一次又一次地遇到.
简而言之,当问题似乎妨碍你时,这个问题正在处理异步性问题.在我的情况下,这通常表现在与第三方库一起工作时,第三方库在设计上是非阻塞的,并且提升了基于回调的API.
例如:现在我正在写一些大量使用mranney的node-redis库的东西.我的程序正在抓取RSS提要并将结果隐藏到redis中.我正在使用我认为是redis的常见策略:
feed:<feedId>:results:<timestamp>.feed:<feedId>:latest.
var redis = require("redis");
var client = redis.createClient();
var get_latest_results = function (feedId) {
client.get('feed:+ feedId + ':latest', function (err, res) {
var latest_reading_key = res.toString();
client.hgetall(latest_reading_key, function (err, res) {
var latest_reading = res;
});
});
// how do I specify a return value for this function?
}
放置return latest_reading在get_latest_results函数的底部失败,因为在函数准备退出之后才定义latest_reading .放置return latest_reading在hgetall调用中失败,因为它return引用了回调,并被忽略get_latest_results.
这只是我似乎不断写入的那种情况的一个例子.也许我正试图将方钉钉入圆孔,因为我不知道更好.似乎应该有一种解决这类问题的非黑客方式.
我正在与一位开发人员讨论如果表使用默认值的问题.对此有一个严格的规则,还是最佳实践中的灰色区域?
我正在尝试研究如何使用Google地图方向演示来获取成功路线的距离.
这是我到目前为止的代码:
var googleMaps = {
// HTML Nodes
fromInput: google_maps_from,
toInput: google_maps_to,
// API Objects
dirService: new google.maps.DirectionsService(),
dirRenderer: new google.maps.DirectionsRenderer(),
map: null,
showDirections: function(dirResult, dirStatus) {
if (dirStatus != google.maps.DirectionsStatus.OK)
{
//Here we'll handle the errors a bit better :P
alert('Directions failed: ' + dirStatus);
return;
}
else
{
//Get the distance here
//onGDirectionsLoad();
}
// Show directions
googleMaps.dirRenderer.setMap(googleMaps.map);
googleMaps.dirRenderer.setPanel(document.getElementById("directions"));
googleMaps.dirRenderer.setDirections(dirResult);
},
getSelectedTravelMode: function() {
return google.maps.DirectionsTravelMode.DRIVING;
},
getSelectedUnitSystem: function() {
return google.maps.DirectionsUnitSystem.METRIC;
},
getDirections: function() …Run Code Online (Sandbox Code Playgroud) 我需要以下内容,任何人都可以帮我做.
Rank Cust_Type Cust_Name Revenue
1 Top A 10000
2 Top B 9000
3 Top C 8000
1 Bottom X 5000
2 Bottom Y 6000
3 Bottom Z 7000
Run Code Online (Sandbox Code Playgroud)
Top和Bottom Cust_Type需要单独的排名,所有这些都在MySQL中.
我有一个典型的Persons表和Orders表定义,我可以按以下方式执行JOIN查询以返回所有人的订单.
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.id=Orders.Person_id
Run Code Online (Sandbox Code Playgroud)
问题是,我如何撰写一份声明,返回所有没有订单的人?
我正在使用mysql.
提前全部感谢.
javascript ×5
sql ×4
asynchronous ×2
mysql ×2
asp.net ×1
database ×1
e-commerce ×1
google-maps ×1
html ×1
join ×1
node.js ×1
redis ×1
script-tag ×1
sql-server ×1
t-sql ×1