小编Man*_*nel的帖子

快速拆分数组的优雅方式

给定任何类型的数组和想要的子数组数量,我需要这个输出:

print([0, 1, 2, 3, 4, 5, 6].splitInSubArrays(into: 3))
// [[0, 3, 6], [1, 4], [2, 5]]
Run Code Online (Sandbox Code Playgroud)

即使没有“足够”的元素来填充这些,输出也必须包含正确数量的子数组:

print([0, 1, 2].splitInSubArrays(into: 4))
// [[0], [1], [2], []]
Run Code Online (Sandbox Code Playgroud)

我现在有这个工作实现,但有没有更好(更优雅)的方式来实现这个输出:

extension Array {

    func splitInSubArrays(into size: Int) -> [[Element]] {

        var output: [[Element]] = []

        (0..<size).forEach {

            var subArray: [Element] = []

            for elem in stride(from: $0, to: count, by: size) {
                subArray.append(self[elem])
            }

            output.append(subArray)
        }

        return output
    }
}
Run Code Online (Sandbox Code Playgroud)

arrays swift

12
推荐指数
5
解决办法
851
查看次数

Docker mongodb与mac os x共享卷

我尝试在mac终端上使用此命令在mac os x 10.10.2上使用mongodb官方docker镜像:

docker run -v /Users/john/data/db:/data/db -p 27017:27017 mongo --smallfiles
Run Code Online (Sandbox Code Playgroud)

但它退出时出现此错误日志:

2015-04-11T10:53:19.709+0000 I JOURNAL  [initandlisten] journal dir=/data/db/journal
2015-04-11T10:53:19.711+0000 I JOURNAL  [initandlisten] recover begin
2015-04-11T10:53:19.711+0000 I STORAGE  [initandlisten] In File::open(), ::open for '/data/db/journal/lsn' failed with errno:1 Operation not permitted
2015-04-11T10:53:19.711+0000 I -        [initandlisten] Assertion failure f.is_open() src/mongo/db/storage/mmap_v1/dur_journal.cpp 597
2015-04-11T10:53:19.713+0000 I CONTROL  [initandlisten]
0xf69069 0xf09861 0xeeed9e 0xd2b8f7 0xd36852 0xd37561 0xd37a90 0xd254b6 0xa9b9f9 0x824220 0x7f13c4 0x7f6dbae1bead 0x822459
----- BEGIN BACKTRACE -----
{"backtrace":[{"b":"400000","o":"B69069"},{"b":"400000","o":"B09861"},{"b":"400000","o":"AEED9E"},{"b":"400000","o":"92B8F7"},{"b":"400000","o":"936852"},{"b":"400000","o":"937561"},{"b":"400000","o":"937A90"},{"b":"400000","o":"9254B6"},{"b":"400000","o":"69B9F9"},{"b":"400000","o":"424220"},{"b":"400000","o":"3F13C4"},{"b":"7F6DBADFD000","o":"1EEAD"},{"b":"400000","o":"422459"}],"processInfo":{ "mongodbVersion" : "3.0.1", "gitVersion" : "534b5a3f9d10f00cd27737fbcd951032248b5952", "uname" : { …
Run Code Online (Sandbox Code Playgroud)

mongodb docker boot2docker

10
推荐指数
2
解决办法
4930
查看次数

Playground Xcode:无法获得沙箱扩展

我在IOS9 xcode项目中的.playground文件中出现此错误消息:

2015-10-28 16:28:45.159 Playground[83944:17501939] Failed to obtain sandbox extension for path=/var/folders/h7/cbc1x51x2rs7sjzfk0ndtxkr0000gp/T/com.apple.dt.Xcode.pg/containers/
Run Code Online (Sandbox Code Playgroud)

我所做的是:

  1. 开始了Xcode 7/Swift 2项目
  2. 使用"pod install Alamofire"
  3. 使用以下代码创建.playground文件:

进口Alamofire

Alamofire.request(.GET, "http://httpbin.org/get" , parameters: ["foo": "bar"]).responseJSON { response in

        print(response.request)  // original URL request
        print(response.response) // URL response
        print(response.data)     // server data
        print(response.result)   // result of response serialization

        let str = response.data!

        if let JSON = response.result.value {
            print("JSON: \(JSON)")
        }
}
Run Code Online (Sandbox Code Playgroud)

如何在.playground文件中测试此库而不会出错?

alamofire xcode7 swift2

7
推荐指数
1
解决办法
2367
查看次数

Javascript fetch api:无法检索一些响应头

我正在使用javascript fetch API使用以下代码查询跨域api:

fetch('https://api.com/search?query="2016"').then(function (response) {

  console.log(response.headers.get('Access-Control-Allow-Headers'))

  console.log(response.headers.get('Content-Range'))
  console.log(response.headers.get('Accept-Range'))

  console.log(response.headers.get('Date'))
  console.log(response.headers.get('Content-Type'))
})
Run Code Online (Sandbox Code Playgroud)

响应标头如下:

Accept-Range:cars 300
Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:Origin, X-Requested-With, Content-Type, Accept, Content-Range, Accept-Range
Access-Control-Allow-Methods:PUT, POST, OPTIONS, GET
Access-Control-Allow-Origin:*
Cache-Control:no-cache
Connection:keep-alive
Content-Range:0-99/1941
Content-Type:application/json
Date:Tue, 12 Jan 2016 12:17:55 GMT
Transfer-Encoding:chunked
Run Code Online (Sandbox Code Playgroud)

非常奇怪的是,只有"Content-Type"适用于其他我得到null:

null
null
null
null
application/json
Run Code Online (Sandbox Code Playgroud)

我需要做什么来检索那些标题?

javascript cors fetch-api

6
推荐指数
1
解决办法
2556
查看次数

Intellij node_modules文件夹颜色是什么意思?

这些node_modules文件夹颜色是什么意思?

在此处输入图片说明

当所有文件夹都使用npm安装时,这些文件夹会有什么不同?

更广泛地说,我们如何查看与文件夹关联的元数据?了解发生了什么。

因为“将目录标记为”没有提及有关node_modules文件夹的任何内容。例如,菜单中甚至没有“库根目录”。

intellij-idea npm

6
推荐指数
2
解决办法
1281
查看次数

使用Grunt时删除包"未在您的文件中注入"的警告?

我安装了"angular-i18n"作为凉亭依赖.

当我跑步grunt servegrunt build收到警告时:

angular-i18n未注入您的文件中.请查看"/ $ APP_ROOT/bower_components/angular-i18n"获取所需文件,然后手动将其包含在您的文件中.

如何删除此邮件?

是否让grunt将此文件插入我的index.html中删除此警告?

angularjs gruntjs bower

4
推荐指数
1
解决办法
1871
查看次数

Intellij无法识别Scala List运算符

这是intellij警告:

在此输入图像描述

当覆盖"::"时,Intellij显示以下消息:无法解析符号::

我正确安装了scala + sbt插件.

我该如何解决这个错误?

scala intellij-idea

4
推荐指数
1
解决办法
2623
查看次数

在Intellij中如何按文件将javascript设置为es6?

我知道如何将整个项目的Java语言版本设置为ES6(语言和框架-> Javascript ...等)。

但是如何只为一个文件设置呢?我有一个很大的ES5项目,并且想一次开始使用ES6一个文件,而不会让Intellij抱怨所有文件。

我可以使用“ / ** ES6 ** /”之类的注释吗?还是在首选项内的面板中?

intellij-idea

3
推荐指数
1
解决办法
723
查看次数

如何覆盖 html 中现有的元标记?

我有一个带有这个元标记的 html 文档:

<meta name="robots" content="noindex, nofollow"> 
Run Code Online (Sandbox Code Playgroud)

我想保留这个标签,但用这个新声明覆盖它:

<meta name="robots" content="index, follow">
Run Code Online (Sandbox Code Playgroud)

我应该将覆盖标签放在第一个标签之前还是之后?

html web-crawler meta-tags

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