小编Nir*_*Nir的帖子

为什么JavaScript处理字符串和数字之间的加号和减号运算符的方式不同?

我不明白为什么JavaScript以这种方式工作.

console.log("1" + 1);
console.log("1" - 1);
Run Code Online (Sandbox Code Playgroud)

第一行打印11,第二行打印0.为什么JavaScript将第一行作为字符串处理,第二行作为数字处理?

javascript string numbers operators

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

为什么JavaScript使用字符串和int来评估加号?

为什么JavaScript根据字符串的位置以不同的方式对字符串和整数求值?

一个例子:

console.log("1" + 2 + 3);
console.log(2 + 5 + "8");
Run Code Online (Sandbox Code Playgroud)

第一行打印123和第二行打印78.

javascript string int

13
推荐指数
2
解决办法
857
查看次数

使用docker在本地运行Travis

我正在尝试使用他们的docker图像(他们的docker图像)在我的本地机器上运行travis构建.他们的指示在这里.

我能够下载并运行docker机器,我切换到travis用户,并克隆我的repo.但是我不太明白如何运行travis.yml文件以便开始构建.

我已经搜索并尝试使用travis-clitravis-build,但没有成功.我打开的建议约/前/而与特拉维斯建立交互(当然使用命令行)运行特拉维斯(后更快的调试).

containers travis-ci docker

13
推荐指数
1
解决办法
4778
查看次数

Curl 命令成功但 python 请求得到 403 Forbidden

我尝试从该网站获取数据。我得到了 cUrl 命令:

curl 'http://mayaapi.tase.co.il/api/report/filter?logo=0' -H 'Origin: http://maya.tase.co.il' -H 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36' -H 'X-Maya-With: allow' -H 'Content-Type: application/json;charset=UTF-8' -H 'Referer: http://maya.tase.co.il/reports/fund?q=%7B%22DateFrom%22:%222016-12-31T22:00:00.000Z%22,%22DateTo%22:%222018-02-03T22:00:00.000Z%22,%22QOpt%22:1,%22Page%22:1,%22Q%22:%22%D7%93%D7%95%D7%97%20%D7%97%D7%95%D7%93%D7%A9%D7%99%22,%22events%22:%5B%5D,%22subevents%22:%5B%5D%7D' --data-binary $'{"Page":1,"GroupData":[],"DateFrom":"2016-12-31T22:00:00.000Z","DateTo":"2018-02-03T22:00:00.000Z","IsBreakingAnnouncement":false,"IsForTaseMember":false,"IsSpecificFund":false,"Q":"\u05d3\u05d5\u05d7 \u05d7\u05d5\u05d3\u05e9\u05d9","QOpt":1,"ViewPage":4}' --compressed
Run Code Online (Sandbox Code Playgroud)

当我从命令行执行此操作时,我会收到响应。但是当我尝试在 python 中使用requests执行此操作时,我得到403 Forbidden.

蟒蛇代码:

response = requests.post(
                "http://mayaapi.tase.co.il/api/report/filter?logo=0",
                data={
                    "Page": 1,
                    "GroupData": [],
                    "DateFrom": "2016-12-31T22:00:00.000Z",
                    "DateTo": "2018-02-03T22:00:00.000Z",
                    "IsBreakingAnnouncement": False,
                    "IsForTaseMember": False,
                    "IsSpecificFund": False,
                    "Q": "??? ?????",
                    "QOpt": 1,
                    "ViewPage": 4,
                },
                headers={
                    "Content-Type": "application/json;charset=UTF-8",
                    "Origin": "http://maya.tase.co.il",
                    "Referer": …
Run Code Online (Sandbox Code Playgroud)

python request web-scraping http-status-code-403 python-requests

5
推荐指数
1
解决办法
749
查看次数

如何到达公共目录

我在我的项目中使用angular-cli,我想使用全局图像 - 我的网站徽标图像.

据我所知,public项目根目录(angular-cli创建)的目录是公共资产 - 这似乎是放置我的形象的好地方(如果我错了请纠正我).

但是,当我尝试在我的<img src="/public/book4u-logo.svg" />标签中找到该图像时,我得到404.原因是,当然,我的项目根目录是src目录而不是项目根目录.

那么,我应该如何进入该目录?或者我应该将我的图像放在另一个目录中?

我的项目树(我删除不必要的后缀):

.
??? angular-cli-build.js
??? angular-cli.json
??? package.json
??? public
?   ??? book4u-logo.svg
?   ??? hero-image-default.jpg
??? src
?   ??? app
?   ?   ??? bfy.component.html
?   ?   ??? bfy.component.scss
?   ?   ??? bfy.component.ts
?   ?   ??? environment.ts
?   ??? favicon.ico
?   ??? index.html
?   ??? main.ts
?   ??? system-config.ts
?   ??? tsconfig.json
?   ??? typings.d.ts
??? tslint.json
??? typings.json
Run Code Online (Sandbox Code Playgroud)

该 …

angular-cli angular

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

使用ngrx/store更新存储的正确方法

我正在学习ngrx/store,我有一个组件调用服务从服务器获取一些数据,因为我重构它使用ngrx/store,我不知道在哪里更新商店.

据我所知,我有两个选择:

  1. 从组件调用服务,获取数据,并使用dispatch更新存储.
  2. 从组件调用服务,服务将使用更新存储状态dispatch.组件可以订阅状态的该部分(使用select),当服务获取数据并更新状态时,组件将通过商店订阅获得更新.

什么是正确的("最佳实践")方式?(也许还有另一个为什么我应该这样做?)

state redux ngrx angular

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

运行时pop,del和remove之间的区别

我构建了一个小测试,看看pop,del和remove之间的运行时是否存在差异.我期望删除和pop/del之间的区别,因为删除搜索值并删除它,并弹出/删除索引.

考试:

import time
list1 = []
list2 = []
list3 = []

for num in xrange(100000):
    list1.append(num)
    list2.append(num)
    list3.append(num)

print len(list1)
ticks = time.time()
for num in xrange(100000):
    list1.pop()

print "list 1 is over", list1
print time.time() - ticks
print "------------------------------------------"

print len(list2)
ticks = time.time()
for num in xrange(99999, -1, -1):
    del list2[num]

print "list 2 is over", list2
print time.time() - ticks
print "------------------------------------------"

print len(list3)
ticks = time.time()
for num in xrange(0,100000):
    list3.remove(num)

print "list 3 …
Run Code Online (Sandbox Code Playgroud)

python runtime

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

Angular2 HTTP POST请求

我在Angular2和Spring-MVC中构建了一个应用程序,当我尝试向我的服务器发出POST请求时,我没有任何成功或失败的迹象,但请求没有发生,因为我看不到新的数据.当我从Postman做请求时 - 请求成功,我可以看到新数据.

Angular2代码:

import { Injectable } from '@angular/core';
import { Http, Response, Headers, RequestOptions  } from '@angular/http';
import { Observable } from 'rxjs/Rx';
import 'rxjs/add/operator/map';

@Injectable()
export class MainContentService {
  constructor(
    private http: Http) {}

  addNewCategory(categoryName: string) {
    let body = JSON.stringify({ name: categoryName });
    let headers = new Headers({ 'Content-Type': 'application/json' });
    let options = new RequestOptions({ headers: headers });

    console.log(body);
    console.log(options);

    return this.http.post('http://localhost:8080/api/v1/categories', body, options)
              .map(this.extractData)
              .catch(this.handleError);
  }

  private extractData(res: Response) {
    let body = res.json(); …
Run Code Online (Sandbox Code Playgroud)

spring http angular

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