我不明白为什么JavaScript以这种方式工作.
console.log("1" + 1);
console.log("1" - 1);
Run Code Online (Sandbox Code Playgroud)
第一行打印11,第二行打印0.为什么JavaScript将第一行作为字符串处理,第二行作为数字处理?
为什么JavaScript根据字符串的位置以不同的方式对字符串和整数求值?
一个例子:
console.log("1" + 2 + 3);
console.log(2 + 5 + "8");
Run Code Online (Sandbox Code Playgroud)
第一行打印123和第二行打印78.
我正在尝试使用他们的docker图像(他们的docker图像)在我的本地机器上运行travis构建.他们的指示在这里.
我能够下载并运行docker机器,我切换到travis用户,并克隆我的repo.但是我不太明白如何运行travis.yml文件以便开始构建.
我已经搜索并尝试使用travis-cli和travis-build,但没有成功.我打开的建议约/前/而与特拉维斯建立交互(当然使用命令行)运行特拉维斯(后更快的调试).
我尝试从该网站获取数据。我得到了 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
我在我的项目中使用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)
该 …
我正在学习ngrx/store,我有一个组件调用服务从服务器获取一些数据,因为我重构它使用ngrx/store,我不知道在哪里更新商店.
据我所知,我有两个选择:
dispatch更新存储.dispatch.组件可以订阅状态的该部分(使用select),当服务获取数据并更新状态时,组件将通过商店订阅获得更新.什么是正确的("最佳实践")方式?(也许还有另一个为什么我应该这样做?)
我构建了一个小测试,看看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) 我在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) angular ×3
javascript ×2
python ×2
string ×2
angular-cli ×1
containers ×1
docker ×1
http ×1
int ×1
ngrx ×1
numbers ×1
operators ×1
redux ×1
request ×1
runtime ×1
spring ×1
state ×1
travis-ci ×1
web-scraping ×1