我正在尝试对jsfiddle进行jquery ajax调用但是遇到了问题:
var ajax1 = function () {
return $.ajax({
type: "post",
url: "/echo/json/",
data: {
name: "thomas!"
},
dataType: 'json'
});
};
var res = ajax1();
console.log(res);
Run Code Online (Sandbox Code Playgroud)
将整个延迟对象打印到控制台.它包括responseText我认为可能是我应该尝试访问的内容,但我未定义.
console.log(res.responseText);
Run Code Online (Sandbox Code Playgroud)
这个AJAX适用于jsfiddle
var a = $.ajax({
url: "/echo/json/",
type: "post",
data: {
json: JSON.stringify({
a: true
})
},
dataType: "json"
});
a.done(function (data) {
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
当我创建a函数并返回AJAX承诺时,为什么它不起作用?
var a = function () {
return $.ajax({
url: "/echo/json/",
type: "post",
data: {
json: JSON.stringify({
a: true
})
},
dataType: "json"
});
}
a.done(function (data) {
console.log(data);
});
Run Code Online (Sandbox Code Playgroud)
这不是正确的语法吗?好吧,显然不是,但我怎样才能在函数中构建AJAX请求?小提琴
我正在阅读这个问题.我有点理解发生了什么,但我很困惑
!function foo() {
console.log(true) ;
}()
Run Code Online (Sandbox Code Playgroud)
不回来false.
!function () {}()这也将返回与函数返回值相反的布尔值,在本例中为true,因为!undefined为true.如果您希望实际返回值是调用的结果,那么尝试这样做:
"也将返回布尔对面"让我觉得false应该返回.为什么不呢.alert(!true); //false
我正在玩CSS边框并做到这一点:
border-style: double dashed dashed solid;
Run Code Online (Sandbox Code Playgroud)
有人能解释为什么这样做吗?改变border-width也做奇怪的事情.

我有一个IIFE,我试图制作一个书签.我希望弹出书签的模式会有一些调用函数的按钮.但是,当我有这样的结构时:
(function(){
var __myFn = function(str){ //also have tried function __myFn(){..}
alert(str);
}
//some AJAX that builds HTML with the `result`s
document.getElementById("resultDiv").innerHTML = "<span onclick='__myFn(" + result.someData+ ")'>test</span>
}());
Run Code Online (Sandbox Code Playgroud)
我明白了 Uncaught ReferenceError: __myFn is not defined
如何识别此功能?还有另外一种方法吗?
我有这个数组:
var arrA = [
{"id": 1, "name": "Manager", "assignable": true},
{"id": 2, "name": "Developer", "assignable": true},
{"id": 3, "name": "Reporter", "assignable": true}
{"id": 4, "name": "Position", "assignable": true},
{"id": 5, "name": "Mayor", "assignable": true},
{"id": 6, "name": "Porter", "assignable": true}];
var arrB = [1,4,5];
Run Code Online (Sandbox Code Playgroud)
我在我的项目中使用了underscore.js和lodash.js
从arrA数组中获取id等于arrB项的所有项的优雅方法是什么?
我在让 gulprun-sequence执行我给它的两个函数时遇到了麻烦(它只会执行其中一个。我有这样的事情:
gulp.task('wire', function(){
gulp.src('./index.html')
.pipe(wiredep())
.pipe(gulp.dest('.'));
});
var filesToInject = ['./app/**/*.js', './app/**/*.css'];
gulp.task('inject', function (){
var target = gulp.src('./index.html');
var sources = gulp.src(filesToInject, {read: false});
return target.pipe(inject(sources))
.pipe(gulp.dest('.'));
});
gulp.task('wire-inject', function(callback){
sequence('wire', 'inject', callback);
});
Run Code Online (Sandbox Code Playgroud)
那只会运行inject任务。只有当我在任务中添加returnbeforegulp.src时wire它才会执行。我还在两个函数参数中添加了回调,并根据文档将其传递到两个任务中的最后一个管道。
gulp.task('wire', function(callback){
gulp.src('./index.html')
.pipe(wiredep())
.pipe(gulp.dest('.'), callback);
});
var filesToInject = ['./app/**/*.js', './app/**/*.css'];
gulp.task('inject', function (callback){
var target = gulp.src('./index.html');
var sources = gulp.src(filesToInject, {read: false});
return target.pipe(inject(sources))
.pipe(gulp.dest('.'), callback);
});
Run Code Online (Sandbox Code Playgroud)
这并没有引发任何错误,但是如果我将其取出,它不会改变任何内容。这个 …
我正在尝试删除所有隐藏的目录和文件,并递归删除它们.当前目录级别唯一隐藏的目录是.,..但几个目录中的每个目录都有几个隐藏文件(以其开头._).ls -aR | egrep '^\.\w+' |将列出我想要的所有文件,但添加'| xargs'rm'`给了我rm错误"没有这样的文件或目录".
我认为这意味着我要删除的每个目录都需要附加它的父目录和/.但也许我错了.
如何更新此命令以删除这些文件?
我有一个节点模块,它使用异步瀑布执行一些操作。它独立工作,并在通过 AJAX 调用运行时完成所有任务,但是,我的 AJAX 回调从未获得其返回值。
//node module
var boilerplateFn = function(params){
async.waterfall([
function(callback){
//do task 1
callback(null, results);
},
function(results, callback){
//task 2 is write
fs.writeFile(path, results, function(err){
if (err){
console.log(err);
}else{
callback(null, results)
}
})
}
], function(err, results){
return results
});
}
module.exports = exports = boilerplateFn;
Run Code Online (Sandbox Code Playgroud)
这将正确写入文件,如果我在最终函数中执行 console.log,我可以看到我的结果字符串。
但是,当我尝试将它包含在这样的路线中时:
var components = require('./app/js/node_components');
app.get('/process/:scale/:type', function(req, res){
var data = processRequest(req.params);
res.json(data);
});
function processRequest(params){
console.log(componentents.boilerplateFn(params)) //prints undefined in Terminal
return {
result: componentents.boilerplateFn(params);
}
}
Run Code Online (Sandbox Code Playgroud)
我通过 jQuery …
有没有办法为大写对象的所有密钥使用map或者reduce所以结果可以直接退换吗?
它工作得很好 forEach
var o = {
fname: 'john',
lname: 'doe'
}
var result = {}
Object.entries(o)
.forEach((el) => {
result[el[0].toUpperCase()] = el[1]
})
console.log('result', result) // worksRun Code Online (Sandbox Code Playgroud)
但试图改变
reduce 不管用
var o = {
fname: 'john',
lname: 'doe'
}
var result = Object
.entries(o)
.reduce((accum, curr) => {
return accum[curr[0].toUpperCase()] = curr[1]
}, {})
console.log('result', result)Run Code Online (Sandbox Code Playgroud)